C语言中将字符串“1a1b1c1d1e1f”转换为整型数组{0x1a,01ab,0x1c,0x1d,0x1e,0x1f}
时间: 2023-08-15 22:07:30 浏览: 75
可以使用`sscanf`函数结合循环来实现将字符串转换为整型数组的操作。
示例代码如下:
```c
#include <stdio.h>
int main() {
char str[] = "1a1b1c1d1e1f";
int arr[6];
int i, n;
// 以每两个字符为一组进行转换
for(i = 0, n = 0; i < 12; i += 2, n++) {
sscanf(str + i, "%2x", &arr[n]); // %2x表示读取两个字符,按十六进制转换
}
// 输出转换后的整型数组
for(i = 0; i < 6; i++) {
printf("0x%x ", arr[i]);
}
printf("\n");
return 0;
}
```
输出结果为:
```
0x1a 0x1b 0x1c 0x1d 0x1e 0x1f
```
阅读全文