"" に関する原因と対処

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

スポンサード リンク

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

コンパイルエラーメッセージ:
warning C4838: 'double' から 'int' への変換には縮小変換が必要です

ソース(バグ有り):

#include <stdio.h>

int main()
{
int scores[] = { 98.56,54,13,100,70,98,55,92,70 };
const int yousosu = sizeof scores /sizeof scores[0];
int i;
int sum = 0;
double avg;
for( i = 0; i < yousosu; i++ )
{
sum += scores[i];
}
avg = (double)sum / yousosu;
printf( "得点の平均: %.2f\n", avg ); }


原因:


対処:


ソース(修正済み):

#include <stdio.h>

int main()
{
int scores[] = { 98,56,54,13,100,70,98,55,92,70 };
const int yousosu = sizeof scores /sizeof scores[0];
int i;
int sum = 0;
double avg;
for( i = 0; i < yousosu; i++ )
{
sum += scores[i];
}
avg = (double)sum / yousosu;
printf( "得点の平均: %.2f\n", avg ); }

スポンサード リンク



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