"error C2100: 間接指定演算子 (*) の使い方が正しくありません" に関する原因と対処

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

スポンサード リンク

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

コンパイルエラーメッセージ:
error C2100: 間接指定演算子 (*) の使い方が正しくありません。

ソース(バグ有り):

#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;
}

スポンサード リンク



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