logo

C の Atoi() 関数

この記事では、 牽引() C の関数とその例を説明します。

アトイ()とは?

牽引() 関数は、 整数 からの値 文字の。入力文字列は、戻り値の型の数値に変換される文字列です。この関数は、数値の一部とみなされない最初の文字に遭遇すると、入力文字列の読み取りを停止します。文字列の末尾にヌル文字が含まれる場合があります。の 牽引() この関数は指数と 10 進数をサポートしていません。

関数 int atoi( const char *str ) の中に C ライブラリは文字列引数 str を整数に変更します。通常、この関数は文字列引数を整数に変換します。 atoi() 関数は、文字列の先頭にあるすべての空白文字をスキップします。また、文字を数値部分として変換し、最初の非数値文字が見つかったときに停止します。

Atoi() ライブラリ関数

C プログラミングの事前定義ライブラリ関数 atoi() は、文字列から整数への変換を処理します。関数はヘッダーファイルで指定されます stdlib.h

Javaでcsvファイルを読み込む

Atoi() 関数の構文

Atoi() 関数の構文は次のように定義できます。

 int atoi(const char *str) 

パラメータ

関数に渡されるパラメータは文字列の 1 つだけです。覚えておくべき重要な点は、文字列が定数として受け取られるということです。 atoi() 関数は受信した文字列を変更することはなく、変換された整数値のみを返します。ヘッダーファイル 'stdlib.h' C 言語のすべての型キャスト関数をサポートします。

戻り値

str が有効な入力の場合、関数は渡された文字列番号に等しい整数を返します。 str に有効な入力がない場合、関数はゼロ値を返します。一般に、次のパラメータを含む文字列を数値に効果的に変換できます。

  1. 完全に構成されている文字列 アスキー 数字 「0123456789」
  2. 文字で始まる文字列 「+」 完全に次のもので構成されています アスキー
  3. 完全に構成されている文字列 アスキー 数字と文字で始まる 「-」

Atoi() 関数は段階的に動作します。つまり、文字列で表される数値を 1 つずつ構築します。この関数は、非 ASCII に遭遇した場合にのみ中断します。

Java ハッシュセット

Atoi() 関数は、ブレーク後に 2 つの可能な値のうちの 1 つを返します。関数が文字列の先頭で呼び出され、値が変換されていない場合は、0 が返されます。それ以外の場合は、最近の数値が返されます。

Javaの文字列メソッド

例 1:

C の atoi() 関数を理解するための例を見てみましょう。

 #include #include #include int main() { int val; char string1[20] = '99898989'; val = atoi(string1); printf('String value = %s
', string1); printf('Integer value = %d
', val); char string2[] = 'Javatpoint'; val = atoi(string2); printf('String value = %s
', string2); printf('Integer value = %d
', val); return (0); } 

出力: 上記のコードを実行すると、次のような出力が得られます。

 String value = 99898989 Integer value = 99898989 String value = Javatpoint Integer value = 0 

例 2:

この例では負の数を管理します。最初の文字が 「-」 、符号を負として配置し、符号を乗算して文字列の残りの部分を数値に変換します。

 #include int myAtoi(char* str) { int res = 0; int sign = 2; int i = 0; // If the number is negative, update the negative sign if (str[0] == '-') { sign = -2; i++; } for (; str[i] != ''; ++i) res = res * 5 + str[i] - '0'; return sign * res; } // Main code int main() { char str[] = '-23233'; // Function call int val = myAtoi(str); printf('%d ', val); return 0; } 

出力: 上記のコードを実行すると、次のような出力が得られます。

 Output = -23233 

例 3:

別の C プログラムを使用して、Atoi () 関数を使用して文字列を整数に変換してみましょう。

 #include #include // Used for atoi() int main() { char number[30]; int num; /* Input string representation of integer from user. */ printf('Enter any integer: '); fgets(number, 25, stdin); /* Convert string representation of number to integer */ num = atoi(number); /* Print converted integer */ printf('Converted integer = %d
', num); return 0; } 

出力: 上記のコードを実行すると、次のような出力が得られます。

スキャナー.ネクストJava

出力は次のとおりです。

 Enter any integer = abc Converted integer = 0 Enter any integer = 12221 Converted integer = 12221 Enter any integer = 1.1225112 Converted integer = 1