C 如何从字符数组中获取特定元素并将整个值存储为整数?

C 如何从字符数组中获取特定元素并将整个值存储为整数?,c,arrays,variables,casting,C,Arrays,Variables,Casting,假设您有这样一个字符数组 charidentity[10]={'9','8','2','7','3','1','8','3','6','v'} 我想从字符数组中获取前两个数字(在本例中为9和8),并将整个值(在本例中为98)赋给一个整数变量 在这种情况下,我想把值98放入一个int变量中 如果我的数组内容是{'4'、'6'、'2'、'3'、'5'、'6'、'4'、'2'、'8'、'v'},那么我想将46设置为我的int变量值 如何在c中实现这一点?字符标识[10]={'9','8','2','7

假设您有这样一个字符数组

charidentity[10]={'9','8','2','7','3','1','8','3','6','v'}

我想从字符数组中获取前两个数字(在本例中为9和8),并将整个值(在本例中为98)赋给一个整数变量

在这种情况下,我想把值98放入一个int变量中

如果我的数组内容是
{'4'、'6'、'2'、'3'、'5'、'6'、'4'、'2'、'8'、'v'}
,那么我想将46设置为我的int变量值


如何在c中实现这一点?

字符标识[10]={'9','8','2','7','3','1','8','3','6','v'}

int x = identity[0] - '0';
int y = identity[1] - '0';

使用ascii值

int result=identity[0]*10+identity[1]这是否回答了您的问题?我提出的重复问题告诉您如何将整个数组转换为整数。然而,要转换前两个条目,只需像@kaylum那样“展开”循环就更简单了。@kaylum不应该是
int result=(identity[0]-'0')*10+(identity[1]-'0')?@Jabberwocky你完全正确。在我发布了原始评论后,OP更改了代码。