C 语言字符串转换函数237


C 语言提供了丰富的字符串转换函数,用于在字符串和数字之间进行转换。这些函数在各种编程场景中广泛使用,例如数据处理、格式化输出和数据验证。本文将详细介绍 C 语言中常用的字符串转换函数,包括它们的用法、功能和示例。

1. atoi() 函数

功能:将字符串转换为整数。

语法:int atoi(const char *str);

参数:一个指向字符串的指针。

返回值:转换后的整数。如果字符串包含无效数字,则返回 0。

示例:```
#include
#include
int main() {
char *str = "123";
int number = atoi(str);
printf("%d", number); // 输出:123
return 0;
}
```

2. atof() 函数

功能:将字符串转换为双精度浮点数。

语法:double atof(const char *str);

参数:一个指向字符串的指针。

返回值:转换后的双精度浮点数。如果字符串包含无效数字,则返回 0.0。

示例:```
#include
#include
int main() {
char *str = "123.45";
double number = atof(str);
printf("%f", number); // 输出:123.45
return 0;
}
```

3. atol() 函数

功能:将字符串转换为长整数。

语法:long atol(const char *str);

参数:一个指向字符串的指针。

返回值:转换后的长整数。如果字符串包含无效数字,则返回 0L。

示例:```
#include
#include
int main() {
char *str = "1234567890";
long number = atol(str);
printf("%ld", number); // 输出:1234567890
return 0;
}
```

4. itoa() 函数

功能:将整数转换为字符串。

语法:char *itoa(int number, char *str, int base);

参数:
number:要转换的整数。
str:指向缓冲区的指针,用于存储转换后的字符串。
base:转换的进制,通常为 10(十进制)、16(十六进制)或 8(八进制)。

返回值:指向转换后字符串的指针。

示例:```
#include
#include
int main() {
int number = 123;
char str[100];
itoa(number, str, 10);
printf("%s", str); // 输出:123
return 0;
}
```

5. ftoa() 函数

功能:将双精度浮点数转换为字符串。

语法:char *ftoa(double number, char *str, int precision);

参数:
number:要转换的双精度浮点数。
str:指向缓冲区的指针,用于存储转换后的字符串。
precision:小数点后的精度。

返回值:指向转换后字符串的指针。

示例:```
#include
#include
int main() {
double number = 123.45;
char str[100];
ftoa(number, str, 2);
printf("%s", str); // 输出:123.45
return 0;
}
```

6. ltoa() 函数

功能:将长整数转换为字符串。

语法:char *ltoa(long number, char *str, int base);

参数:同 itoa() 函数。

返回值:指向转换后字符串的指针。

示例:```
#include
#include
int main() {
long number = 1234567890L;
char str[100];
ltoa(number, str, 10);
printf("%s", str); // 输出:1234567890
return 0;
}
```

C 语言提供了丰富的字符串转换函数,用于在字符串和数字之间进行转换。这些函数在数据处理、格式化输出和数据验证中发挥着重要作用。通过了解这些函数的用法和功能,程序员可以有效地处理字符串数据,提高代码的可读性和效率。

2024-11-11


上一篇:逆向排序输出 C 语言

下一篇:精确控制 C 语言小数输出