"error C2014: プリプロセッサ ディレクティブのシャープ記号 (#) の前に、空白文字以外の文字があります" に関する原因と対処

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

スポンサード リンク

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

コンパイルエラーメッセージ:
error C2014: プリプロセッサ ディレクティブのシャープ記号 (#) の前に、空白文字以外の文字があります。

ソース(バグ有り):

#include <stdio.h>
#include <conio.h>

int main()
{
	 char buf[256];
	 size_t read;

	 printf("文字を入力してください。\n");
	 _cgets_s(buf# sizeof(buf), &read);
	 printf("入力されたバイト数: %d バイト\n", read);

	 return 0;
}


原因:
プリプロセッサディレクトリを表す # の前に文字があります。

ここでは # の前に文字があるためエラーとなっています。

あるいあ不正な # が残っていないか確認します。

対処:
プリプロセッサディレクトリの文法を確認します。


ソース(修正済み):

#include <stdio.h>
#include <conio.h>

int main()
{
	 char buf[256];
	 size_t read;

	 printf("文字を入力してください。\n");
	 _cgets_s(buf, sizeof(buf), &read);
	 printf("入力されたバイト数: %d バイト\n", read);

	 return 0;
}

スポンサード リンク



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