当字符串为空时结束for循环

时间:2013-02-07 06:29:45

标签: c++

所以我有一个调用字符串的函数,我将字符串转换为int数组。

for (i = 0; ; i++)
{
    areaIntA[i] = area[i] - '0';
    areaCounter++;
}

之前我得到它(i = 0; i< 5; i ++)因为5是我的int数组的最大限制,但我遇到了问题。当字符串没有剩余值时,如何使条件结束for循环,因为有时它可能会调用“50”或“540”或“1”或“1930”等...

2 个答案:

答案 0 :(得分:5)

开关(stringType)

案例std::string

for (i = 0; i<area.length() ; i++)
{

案例char*

for (i = 0; area[i] != '\0' ; i++)
{

案例固定长度char[]

for (i = 0; i< sizeof(area)/sizeof(area[0]) ; i++)
{

答案 1 :(得分:2)

for (i = 0; area[i]!='\0'; i++)
{
    areaIntA[i] = area[i] - '0';
    areaCounter++;
}