atoX系列函数
1、atoi函数
所在库<stdlib.h>
原型:int atoi(const char *str);
形参:一个指向字符串的指针
返回值:这个字符串中的数字对应的 int 型数
功能:将从字符串的第一个位置开始,略去空白,将字符型数字转化为数值型数字,直到遇到第一个非数字型字符时停止。如果字符串中第一个元素不是数字,那么返回0。可以识别正负号。
例子:
#include<stdlib.h>
#include<stdio.h>
int main()
{
char buf[20];
fgets(buf, 20, stdin);
int i = atoi(buf);
printf("%d\n", i);
return 0;
}
如果输入为: -123.43ui8
此时atoi把它转化为-123,对应输出为-123
如果输入为:e123
此时atoi把它转化为0,对应输出为:0
2. atol
所在库<stdlib.h>
原型:long atol(const char *str);
形参:一个指向字符串的指针
返回值:这个字符串中的数字对应的长整型数
功能:将从字符串的第一个位置开始,略去空白,将字符型数字转化为数值型数字,直到遇到第一个非数字型字符时停止。如果字符串中第一个元素不是数字,那么返回0。可以识别正负号。
3. atof
所在库<stdlib.h>
原型:double atol(const char *str);
形参:一个指向字符串的指针
返回值:这个字符串中的数字对应的double型数
功能:将从字符串的第一个位置开始,略去空白,将字符型数字转化为数值型数字,直到遇到第一个非数字型字符时停止。如果字符串中第一个元素不是数字,那么返回0。可以识别正负号。
#include<stdlib.h>int main(){char*a="-100.23";char*b="200e-2";doublec;c=atof(a)+atof(b);printf(“c=%.2lf\n”,c);return 0;} |
strtoX系列函数
long int strtol ( const char * str, char ** endptr, int base );
unsigned long int strtoul ( const char * str, char ** endptr, int base );
double strtod ( const char * str, char ** endptr );头文件<stdlib.h>原型double strtod (const char* str, char** endptr);形参:str是指向字符串开始的位置。endptr为第一个不能转换的字符的指针。返回值:返回转换后的浮点型数;若不能转换或字符串为空,则返回 0.0。功能:strtod() 函数会扫描参数str字符串,跳过前面的空白字符(例如空格,tab缩进等),直到遇上数字或正负符号才开始做转换,到出现非数字或字符串结束时('\0')才结束转换,并将结果返回。参数 str 字符串可包含正负号、小数点或E(e)来表示指数部分。如123. 456 或123e-2。
本文详细介绍了C语言中的atoX系列函数(atoi、atol、atof)及strtoX系列函数(strtol、strtoul、strtod)的功能、用法与示例。这些函数用于将字符串转换为各种数值类型。
1070

被折叠的 条评论
为什么被折叠?



