一、atoi函數概述
atoi函數是C/C++語言標準庫中的一個函數,用於將字符串轉換為整數。其原型如下:
int atoi(const char *str);
該函數的作用是把字符串str轉換成一個整數(十進制表示)。函數會掃描參數str字符串,跳過前面的空格字符,直到遇上數字或正負符號,才開始做轉換,而再遇到非數字或字符串結束時(’\0’)才結束轉換,並將結果返回。
二、atoi函數的參數
該函數只有一個參數,即要轉換成整數的字符串指針,指針指向的地址中存儲字符串。
三、atoi函數的返回值
函數返迴轉換後的整數,如果無法轉換,返回0。
四、atoi函數例子及說明
1、atoi函數正常轉換
下面這段代碼展示了atoi函數的基本使用方法。可以看出,在將字符串”123″轉換為整數後,輸出結果為123。
#include <stdio.h> #include <stdlib.h> int main() { char *str = "123"; int num = atoi(str); printf("%d", num); return 0; }
2、atoi函數在遇到不合法字符時不轉換
下面的代碼演示了,如果傳入的字符串中含有非數字字符和正負號, atoi函數將在該字符處停止轉換並返回整數,輸出結果為0。
#include <stdio.h> #include <stdlib.h> int main() { char *str = "12a"; int num = atoi(str); printf("%d", num); return 0; }
3、atoi函數在字符串為空時返回0
下面的代碼展示了當字符串為空時,aoti函數返回0的情況。
#include <stdio.h> #include <stdlib.h> int main() { char *str = ""; int num = atoi(str); printf("%d",num); return 0; }
4、atoi函數在字符串中含正負號和空格時,會自動忽略空格
下面的代碼展示了athe函數在處理含有正負號和空格的字符串時,會自動忽略空格。
#include <stdio.h> #include <stdlib.h> int main() { char *str = " -12"; int num = atoi(str); printf("%d", num); return 0; }
五、atoi函數的應用場景
atoi函數在字符串轉換成整數方面具有廣泛的應用場景。比如:
- 將字符串類型的配置文件轉換成程序所需的參數格式
- 將字符串類型的訂單號轉換成整型ID,方便數據庫查詢及操作
- 將輸入的用戶名(字符串類型)轉換成數字類型的用戶ID,方便程序處理
六、總結
在C/C++語言中,atoi函數是十分常見的字符串轉數字函數,其作用是將一個字符串類型的數字轉換成整型數字,便於程序後續的操作和計算。在使用atoi函數時,需要注意傳入的字符串是否符合要求。同時,對於非法的字符串傳入,atoi函數會自動返回0。
原創文章,作者:QXUL,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/147747.html