"" に関する原因と対処

このコンパイルエラーの原因と対処に関して説明します。

スポンサード リンク

Microsoft Visual C++にて以下のソースでコンパイルエラーが発生します:

コンパイルエラーメッセージ:
error C2466: サイズが 0 の配列を割り当てまたは宣言しようとしました。

ソース(バグ有り):

//プログラムのファイル名とフルパスを取得するサンプル

#include <Windows.h>
#include <stdio.h>

int main(int argc, char **argv) { 
char *fileName;
char fileFullPath[MAX_PATH&1];
GetFullPathName(argv[0], MAX_PATH+1, fileFullPath, &fileName);
printf("実行ファイルのフルパス:%s\n", fileFullPath);
printf("実行ファイルのファイル名:%s", fileName);
return 0; }


原因:


対処:


ソース(修正済み):

//プログラムのファイル名とフルパスを取得するサンプル

#include <Windows.h>
#include <stdio.h>

int main(int argc, char **argv) { 
char *fileName;
char fileFullPath[MAX_PATH+1];
GetFullPathName(argv[0], MAX_PATH+1, fileFullPath, &fileName);
printf("実行ファイルのフルパス:%s\n", fileFullPath);
printf("実行ファイルのファイル名:%s", fileName);
return 0; }

スポンサード リンク



[コンパイルエラーコード、メッセージに戻る]