"" に関する原因と対処

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

スポンサード リンク

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

コンパイルエラーメッセージ:
warning C4302: '型キャスト': 'void *' から 'char' へ切り詰めます。

ソース(バグ有り):

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(void)
{
char *moji;
char searchString[64] = "abcdefghijklmnopqrstuvwxyz";
moji = (char)memchr(searchString, 'x' ,sizeof(searchString));
if(moji != NULL)
{ printf("見つかった場所はここ:%s\n",moji); }
else
{ puts("検索した 'x' は見つかりませんでした。\n"); } return 0; }


原因:


対処:


ソース(修正済み):

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(void)
{
char *moji;
char searchString[64] = "abcdefghijklmnopqrstuvwxyz";
moji = (char*)memchr(searchString, 'x' ,sizeof(searchString));
if(moji != NULL)
{ printf("見つかった場所はここ:%s\n",moji); }
else
{ puts("検索した 'x' は見つかりませんでした。\n"); } return 0; }

スポンサード リンク



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