字串轉化為整數需要注意以下幾個問題:
1.檢測非法輸入;
2.空串、空指標;
3.判斷數字的正負;
4.處理數字的上下溢位。(因為整數是有範圍的。
)#include
long long strtointcore(const char* digit,bool minus);
enum status;
int g_nstatus = kvalid; //定義乙個全域性變數來標誌是否遇到非法輸入。
int strtoint(const char* str)else if(*str == '+')else if(*str >= '0' && *str <='9')
if(*str != '\0')
}return (int)num;
}long long strtointcore(const char* digit,bool minus)
digit++;
}else
}if(*digit == '\0')
return num;
}int main()
整數轉化為字串和字串轉化為整數
整數轉化為字串 includeint main temp i 0 為什麼等於0就可以,因為將temp定義為字串陣列後,等號右邊的數相當於ascii碼值,0就相當於 0 如果寫為61,輸出就為 12345 printf s temp i i 1 while i 0 str j temp i str j...
字串轉化為整數值
思路分析 首先判斷字串是否為空,返回0 考慮前面的是否是空格,使用trim 去掉,然後判斷長度是否為0,是的話,返回0 判斷第乙個字元是不是 和 設定變數sign記錄 迴圈取得字串的數字,考慮字串中有非數字,遇到就退出,保留前面的數字 考慮溢位的情況,溢位返回integer的最大值或最小值 publ...
把字串轉化為整數
將乙個字串轉換成乙個整數 實現integer.valueof string 的功能,但是string不符合數字要求時返回0 要求不能使用字串轉換整數的庫函式。數值為0或者字串不是乙個合法的數值則返回0。輸入乙個字串,包括數字字母符號,可以為空 如果是合法的數值表達則返回該數字,否則返回0 例子 21...