【发布时间】:2021-12-02 08:08:05
【问题描述】:
我正在尝试做的事情: 我有一个字符数组,看起来像“vm1”。我想设置一个整数变量,等于数组最后一个元素的值,在这种情况下为 1。我不需要任何花哨的东西,因为在我的情况下数组的长度将始终为 3。
我的代码:
char *string = "vm1";
int number = (int)string[2];
printf("Character from string: %c", string[2]);
printf("Number: %d", number);
输出:
Character from string: 1
Number: 55
出了什么问题:
由于某种原因,这个数字总是一些不正确的值。 55 就是来自这个案例。我尝试的另一种方法是使用sscanf,但它会产生类似的结果。
【问题讨论】:
-
如果一直是个位数,可以
string[2]-'0'
标签: arrays c string integer converters