-2

問題があります。画像ファイルを読み取ろうとしています。このファイルには列と行の数があり、この情報のみを読み取ってピクセルのマトリックスを作成しようとしています。例: char numb[2]; numb[0]='1'; numb[1]='0'; int numb=10; に変換しようとしています。ありがとう

4

2 に答える 2

2

最初に次のようなものをお勧めします。

if (isdigit(numb[0]) && isdigit(numb[1])) {
    int val = (numb[0] - '0') * 10 + (numb[1] - '0');
}

別の方法は次のとおりです。

char str[3] = { numb[0], numb[1], '\0' };
char* enptr;
int val = strtol(str, &endptr, 10);

if (*endptr != '\0')
    /* failed to convert */ 

ただし、前者のアプローチよりも大きな利点はほとんどありません (この特定のケースでは)。

于 2013-10-23T21:30:05.103 に答える