如何更改for循环中的字符串

时间:2015-09-16 02:08:08

标签: visual-c++

所以我试图让变量“name”等于“slider1”,但它给了我 错误

  

初始化为'{...}'期望聚合对象

代码:

for (int TpNum = 1; TpNum < 2; TpNum++)
{
    char name[8] = ("slider" + TpNum );

    Enemy name(5, 5, 'r', name);
}

1 个答案:

答案 0 :(得分:0)

数组是聚合类型,因此使用initializer list初始化。

您尝试添加char*时更加虚假。你应该使用C ++ std::string,但是你可以用C字符串来完成它。

for (int TpNum = 1; TpNum < 2; ++TpNum)
{
    char[8] name; 
    sprintf(name,"slider%d",TpNum);

    Enemy name(5, 5, 'r', name);
}

您需要包含<stdio.h>才能使用sprintf

修改

另请注意,您的循环只会执行一次,所以您可以说

Enemy name(5, 5, 'r', "slider1");