21xrx.com
2024-06-03 06:18:29 Monday
登录
文章检索 我的文章 写文章
C++如何将char数组转换为int?
2023-07-09 12:05:32 深夜i     --     --
C++ char数组 转换 int

C++中将char数组转换为int可以使用atoi()函数、strtol()函数或者手动计算的方式。

1. 使用atoi()函数

atoi()函数可以将一个字符串转换为相应的整数。在使用该函数时,需要包含头文件

char arr[] = "1234";

int num = atoi(arr);

2. 使用strtol()函数

strtol()函数可以将一个字符串转换为长整型数。在使用该函数时,需要包含头文件

char arr[] = "1234";

int num = strtol(arr, nullptr, 10);

第一个参数是要转换的字符串,第二个参数是一个指向char *(字符指针)类型的指针,指向第一个不能解析为数字的字符,如果转换全都成功,那么该指针指向字符串的结尾。第三个参数是转换的进制数,这里使用十进制。

3. 手动计算的方式

也可以通过手动计算的方式将char数组转换为int。假设要转换的数组为arr。

int num = 0;

for (int i=0; i

  num = num*10 + (arr[i]-'0');

}

通过循环遍历,将每个字符转换为int类型,乘以10的次幂,再加到num中即可。需要注意的是,char类型的数字在计算前需要减去'0'才能得到相应的数字。

无论是使用atoi()函数、strtol()函数还是手动计算的方式,都可以将char数组转换为int。选择何种方式,取决于具体的场景和需求。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复