2013-02-28 50 views
1

美好的一天, 我有一个数组问题,因为我想更改单个元素。我有这个:在C++中修改单个字符串元素

int stats[2] = {0,50}; 

我希望把这个数组放在一个void函数中,并从第二个元素中减去10。以下是我已经尝试过:

void change(int stats[2]){ 
stats[1] = atoi(stats[1]) - 10; 

我recieving的错误是:

Invalid conversion from int to const char* 

我在C++初学者所以任何有帮助的建议,将非常感激。干杯。

+2

'stats' is int type already – billz 2013-02-28 09:02:33

+2

我不会开始假设您选择了意外值50;它是'2'的asci值。当这个结果完成时,你打算把'stats [1]'变成'(-8)'? – WhozCraig 2013-02-28 09:05:26

回答

8

只需使用stats[1] = stats[1] - 10。这里没有涉及的字符串,那么为什么使用atoi

+0

非常感谢! – qsorted 2013-03-07 07:16:17

1

您不需要atoi函数。 stats[1]已经是intatoi用于将“字符串”或字符表示“转换”为信息量为int的值。它需要一个c字符串或一个空终止数组charconst char *编译器没有找到。使用简单:

stats[1] -=10;