を失敗しているhold4
に保存された値です。変換する文字列は、私はここでは、この主題に関連する他の記事をチェックした文字列を変換する<code>atoi</code>機能を使用していますが、値は常に0</p> <p>ある
char hold4[4] = { "0", "." , "1", "5", "\0");
私はその後int
に変換しようと、私は
int hm = atoi(hold4);
hm
として出力し得る:
hm = 0
私はそれがhold4
の値だとしてhm
は、0.15であることを期待しています。私はその後の数学演算にこの値を使用したいと思います。ここで
は私のコードです:
int x = 0;
int pixel = 0;
char hold[10];
char hold4[4];
for(x=0; x < linesCount; x++)
{
fscanf(model, "%c", &hold[x]);
if(hold[x] == '\0' || hold[x] == '\r' || hold[x] == '\n')
{
hold4[0] = hold[x-4];
hold4[1] = hold[x-3];
hold4[2] = hold[x-2];
hold4[3] = hold[x-1];
hold4[4] = '\0';
// printf("new line: break\n");
}
//printf("pixel: %c\n", hold[x]);
}
int hm = atoi(hold4);
printf("\nhold4: %d\n", hm);
は、どのように私はこの仕事をするのですか?
に気付かなかったこれを試して? –
あなたのコードは 'char'へのポインタを変換するための大量のコンパイラ警告を生成します。 'char *'をイニシャライザーで 'char'に格納しようとします!コンパイラの警告/エラーは単なる楽しいものではありません! – Olaf