C语言 char 转int
时间: 2024-09-27 21:11:16 浏览: 71
详解C语言中的char数据类型及其与int类型的转换
在C语言中,你可以通过一些转换运算符将`char`类型的值转换为`int`类型。这主要是因为`char`类型的范围通常较小,比如-128到127,而`int`类型通常拥有更大的范围。以下是几种常见的转换方法:
1. **直接隐式转换**:
当一个`char`类型的值赋给`int`类型的变量时,系统会自动将其视为一个整数值进行存储,无需显式的转换操作。例如:
```c
int i = 'A'; // 相当于 i = 65;
```
2. **强制类型转换**:
使用`(int)`类型转换运算符也可以手动进行转换,但最好只在明确知道`char`值代表的有效整数范围内这么做。例如:
```c
char ch = 'a';
int num = (int)ch; // num现在等于97
```
3. **`atoi`函数**:
如果你想将一个字符数组转换为整数,可以使用标准库中的`atoi`函数,但它通常针对字符串而不是单个字符。例如:
```c
char str[] = "42";
int num = atoi(str); // num现在等于42
```
请注意,如果`char`的值超出了`int`的正常范围,结果可能会是未定义的,因此在实际应用中应确保转换安全有效。
阅读全文