"error C2106: '=': 左のオペランドが、左辺値になっていません" に関する原因と対処

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

スポンサード リンク

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

コンパイルエラーメッセージ:
error C2106: '=': 左のオペランドが、左辺値になっていません。

ソース(バグ有り):

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

スポンサード リンク



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