0

我在 ini 文件中有一个服务器端口列表。为了得到这些并将它们加载到一个列表中,我使用了一个 for 循环。我如何使用变量来使其工作。

ServerAmount = 8;
int z;
ServerPort[];
for ( z = 0; z < ServerAmount; z++ )
{
  if(getenv('SERVERPORT[z]') != NULL)
  {
      ServerPort[z] = getenv('SERVERPORT[z]');
  }
}

所以简单地说,我如何让 z 作为数字传递。(即服务器端口[1])

PS。对不起,如果这是菜鸟问题。

4

1 回答 1

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];
于 2012-07-12T15:03:32.397 回答