
DLLで外部のファイルサイズを得る関数を作っています。
C言語は書きながら覚えていこうとしているのですが、
どうしても分からない点がありました。
ソースをここに正しく書ける自信がないので日本語を含めて大体で書きます。
いろいろなサイトのコピペです。
double __stdcall filesize(){
HANDLE hFile;
DWORD size;
hFile = CreateFile( _T(絶対パス, GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL );
size = GetFileSize( hFile, NULL );
CloseHandle( hFile );
return(size);
}
このような感じで書いていて最後にretuenでファイルサイズを正しく得ることができました。
この絶対パスは環境によって変わるので引数にしようと考えました。
そしてfilesize()の中にどのように記述すればいいかで躓いています。
filesize(絶対パス){
char pass[] = "絶対パス";
hFile = CreateFile( _T(pass, GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL );
こんな感じで書ければいいのですがC言語はポインタや文字列の扱いが難しいですね。
初歩的なことで申し訳ありませんがよろしくお願いします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
古いC言語の仕様しか知りませんが、
\は\\と書けばいいはずです。
char systemdir[] = "c:\\windows\\system32";
てな感じで。
それから、
filesize(絶対パス){
char pass[] = "絶対パス";
と言う書き方って、良かったんだったかな?
はっきりと覚えていないですが、普通は
filesize(char *pass){
hFile = CreateFile( _T(pass, GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL );
でいいと思います。
これだと、文字列(パス名)の先頭アドレスのみfilesize関数に渡ることになります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語のプログラムについてです
-
std::stringクラスのc_str()で...
-
char型にint型の数値を代入する。
-
new charとnew char[N]の違いは?
-
CStringからchar*への型変換に...
-
文字列内の数字削除
-
ポインタを使って回文かどうか...
-
char 文字列型 の表現範囲が-12...
-
VBAのプログラムで、DIAG = 1# ...
-
プログラムによく出てくるst...
-
C言語 配列の長さの上限
-
C# DataTableの行をソートしてD...
-
C++で、メンバもヒープに確保さ...
-
c言語のポインタへの文字列入力...
-
銀行ATMの数字キーの配列
-
C#で構造体の配列を持った構造...
-
newしないオブジェクトについて
-
Integer変数をカラにしたいので...
-
配列の要素数に変数を入れたい...
-
C言語 ファイルの指定された行...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
CStringからchar*への型変換に...
-
char*を初期化したいのですが
-
C言語のintとcharの違いってな...
-
C言語にて構造体のメンバがNULL...
-
fstream型オブジェクトを関数の...
-
char型にint型の数値を代入する。
-
char 文字列型 の表現範囲が-12...
-
文字列を比較するプログラムな...
-
ostringstreamではまりました
-
文字列内の数字削除
-
C言語のプログラムについてです
-
csvファイルをfscanfで読み込む...
-
エクセルのMID関数は、C言語では?
-
ポインタを使って回文かどうか...
-
C言語でポインターで詰まってい...
-
文字列の途中から途中までを抽出
-
new charとnew char[N]の違いは?
-
文字列str内の全ての数字を...
-
以下のようなプログラムを書い...
-
char AA[]{"全角文字"};から"全...
おすすめ情報