我在ini文件中有一个服务器端口列表。获取这些并将它们加载到列表中我使用for循环。我如何使用变量来实现这一点。
ServerAmount = 8;
int z;
ServerPort[];
for ( z = 0; z < ServerAmount; z++ )
{
if(getenv('SERVERPORT[z]') != NULL)
{
ServerPort[z] = getenv('SERVERPORT[z]');
}
}
所以我如何简单地将z作为数字传递。 (即SERVERPORT [1])
PS。对不起,如果这是noob问题。
答案 0 :(得分:4)
您应该使用sprintf
,请告诉我这是否适合您:
ServerAmount = 8;
int z;
ServerPort[];
for ( z = 0; z < ServerAmount; z++ )
{
char tmp[20];
sprintf(tmp, "SERVERPORT[%i]", z);
if(getenv(tmp) != NULL)
{
ServerPort[z] = getenv(tmp);
}
}
编辑:
顺便说一句,ServerPort[]
无效。你可能想写一些类似的东西:
char *ServerPort[8];