#このチュートリアルの動作環境: Windows7 システム、C99 バージョン、Dell G3 コンピューター。C 言語で数値を文字列に変換する方法: 1. ASCII コード操作、元の数値に「0x30」を追加すると、構文「数値 0x30」は数値に対応する文字 ASCII コードを格納します。 itoa() を使用すると、整数を文字列に変換できます。構文は "itoa(number1, string,number);" です。 3. sprintf() を使用すると、指定された要件に従ってコンテンツをフォーマットし、ファイルに保存できます。ポインタは文字列を指しました。
C 言語で数値を文字列に変換するいくつかの方法
方法 1. ASCII コード操作: 数値 0x30
char型の格納形式はASCIIコード値ですので、数値0のASCIIコード48、つまり0x30を加算することで、その数値に対応する文字ASCIIコードを格納することができます。#include <stdio.h> int main() { char str1 = 'c'; // 随便初始化一下 str1 = 0x30 + 5; printf("str1: %c\n", str1); printf("str1: %d\n", str1); return 0; }ここで拡張すべき一文は、文字の保存の本質は ASCII コードであるため、文字を保存するために uint8_t または他のタイプの変数/配列を使用できるということです。私のプロジェクトではストレージにu8を使用していますが、データ構造が8ビットである必要があり、符号なし特性も決定されるという利点があります。
方法 2.itoa() を使用する
これは、cstdlib 非標準ライブラリの関数です。 itoa (整数を英数字に表現) は、整数値を文字列に変換する関数です。 この関数の使用法は次のとおりです。char *itoa (int value, char *str, int base);
#include <stdlib.h> #include <stdio.h> int main() { int number1 = 123456; int number2 = -123456; char string[16] = {0}; itoa(number1,string,10); printf("数字:%d 转换后的字符串为:%s\n",number1,string); itoa(number2,string,10); printf("数字:%d 转换后的字符串为:%s\n",number2,string); return 0; }
方法 3: sprintf() 関数
これは stdio 標準ライブラリ関数です。この関数は、指定された要件に従ってコンテンツをフォーマットし、ポインタが指す文字列に格納できます。 sprintf() 関数の宣言。int sprintf(char *str, const char *format, ...)
#include <stdio.h> #include <math.h> int main() { char str[80]; sprintf(str, "Pi 的值 = %f", M_PI); puts(str); return(0); }【 関連する推奨事項:
以上がC言語で数値を文字列に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。