strtol() を使用して文字列から数値を読み取ろうとすると、数値が範囲外の場合に返されるはずの LONG_MAX 数値が返されますが、私の数値はそれほど大きくありません
main(){
char linea[30]={"110111010111111000000000"};
long num=strtol(linea,NULL,0);
printf("%s\n%X",linea,num);
}
実際の結果:
110111010111111000000000
7FFFFFFF
必要な結果:
110111010111111000000000
DD7C00