"" に関する原因と対処

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

スポンサード リンク

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

コンパイルエラーメッセージ:
error C2137: 空の文字定数

ソース(バグ有り):

#include <memory.h>
#include <stdio.h>

int main( void )
{
char buffer[] = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
printf( "memset 前の文字列の状態: %s\n", buffer );
memset( buffer, '', 10 );
printf( "memset 後の文字列の状態: %s\n", buffer ); }


原因:


対処:


ソース(修正済み):

#include <memory.h>
#include <stdio.h>

int main( void )
{
char buffer[] = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
printf( "memset 前の文字列の状態: %s\n", buffer );
memset( buffer, '*', 10 );
printf( "memset 後の文字列の状態: %s\n", buffer ); }

スポンサード リンク



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