如何将char数组改为数值数组
时间: 2023-09-11 21:10:52 浏览: 76
matlab字符串数组
将char数组转换为数值数组的方法取决于char数组中存储的数据类型。以下是几种常见的char数组转换为数值数组的方法:
1. 字符串转换为整数数组:
可以使用atoi函数将字符串转换为整数。例如,假设有一个char数组str,其中存储了"1234"这个字符串,可以使用以下代码将其转换为整数数组:
```
char str[] = "1234";
int arr[4];
for (int i = 0; i < 4; ++i) {
arr[i] = str[i] - '0';
}
```
2. 字符串转换为浮点数数组:
可以使用atof函数将字符串转换为浮点数。例如,假设有一个char数组str,其中存储了"1.234"这个字符串,可以使用以下代码将其转换为浮点数数组:
```
char str[] = "1.234";
float arr[4];
for (int i = 0; i < 4; ++i) {
arr[i] = str[i] - '0';
}
arr[1] = str[2] == '.' ? atof(str+1) : atof(str);
```
3. 字符数组转换为整数数组:
如果char数组中存储的是单个字符,可以使用以下代码将其转换为整数数组:
```
char arr[] = {'1', '2', '3', '4'};
int intArr[sizeof(arr) / sizeof(arr[0])];
for (int i = 0; i < sizeof(arr) / sizeof(arr[0]); ++i) {
intArr[i] = arr[i] - '0';
}
```
阅读全文