Ⅰ c語言將字元轉為整數
#include
void main()
{
int a=10;
char t[3];
t[0]=a/10+48;
t[1]=a%10+48;
t[2]='\0';
printf("輸出t【3】的值:");
printf("%s\n",t);
}
我指一下你的錯誤:
1 對字元數組定義的時候出錯,出現了反復定義
2 對數字 比如數字a 要把它轉換成字元a 必須加上48,將其類型轉換
3 要使兩者全等 還必須把t[2]賦值為'\0',即為空字元
Ⅱ C語言如何把一個字元串轉換成數字
C語言中,可以使用atoi函數將字元串轉換為數字,如atoi("123")可以得到數字123。
atoi (表示 ascii to integer)是把字元串轉換成整型數的一個函數,應用在計算機程序和辦公軟體中。int atoi(const char *nptr) 函數會掃描參數 nptr字元串,會跳過前面的空白字元(例如空格,tab縮進)等。
如果 nptr不能轉換成 int 或者 nptr為空字元串,那麼將返回0。特別注意,該函數要求被轉換的字元串是按十進制數理解的。atoi輸入的字元串對應數字存在大小限制(與int類型大小有關),若其過大可能報錯-1。
(2)c語言字元型數據轉換為數字擴展閱讀:
C語言中數字轉化為字元串的方案:
使用sprintf函數來實現,如sprintf("%d", 123)可以得到字元串"123"。
sprintf指的是字元串格式化命令,主要功能是把格式化的數據寫入某個字元串中。sprintf 是個變參函數。使用sprintf 對於寫入buffer的字元數是沒有限制的,這就存在了buffer溢出的可能性。解決這個問題,可以考慮使用 snprintf函數,該函數可對寫入字元數做出限制。
Ⅲ C語言中怎麼將一個整數字元串轉換為一個數
#include<stdio.h>
//把一個整數字元串轉換為一個數。
intascii_to_integer(char*string)
{
intvalue;value=0;
//逐個把一個整數字元串轉換為一個數。
while(*string>='0'&&*string<='9'){
value*=10;
value+=*string-'0';
string++;
}
//錯誤檢查:如果由於遇到一個非數字字元而終止,把結果設置為0
if(*string!='