これはどのように可能ですか?私の教科書の質問の1つ(ここで試験のために勉強する)は、これができると主張し、次のように尋ねます。
文字列を受け取る関数を書きます。この関数は、文字列を整数に変換する必要があります。変換できない場合は 0 を返します。
例 1: 8976 は次の値を返します。
((((8*10 + 9) *10)+ 7 )* 10) + 6
例 2: 67A は値 0 を返します
これはどのように行うことができますか?関数を使用できることは知っていますatoi()
が、本はこれを関数なしで実行したいと考えていますか?
編集:さらに考えてみましょう:
int i, ans;
char number[5]="8976";
for(i=0;i<strlen(number);i++)
ans=(ans*10)+(number[i]-'0');
上記は機能しますか?