如何在函数内部声明全局变量?

新手上路,请多包涵

我在函数内部创建全局变量时遇到问题,这是一个简单的例子:

 int main{
   int global_variable;  //how to make that
}

这正是我想要做的:

 int global_variable;
int main{
                   // but I wish to initialize global variable in main function
}

原文由 user3137147 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 2.1k
2 个回答

你有两个问题:

  1. main 不是循环。这是一个功能。

  2. 您的函数语法错误。您需要在函数名称后加上括号。这些都是 main 的有效语法:

     int main() {
    }

    int main(int argc, const char* argv[]) {
    }

然后,您可以在 main 中声明一个局部变量,如下所示:

 int main() {
  int local_variable = 0;
}

或像这样分配给全局变量:

 int global_variable;

int main() {
  global_variable = 0;
}

原文由 Joseph Mansfield 发布,翻译遵循 CC BY-SA 4.0 许可协议

没有办法以你想要的方式 声明 它。就是这样。

但:

  • 首先,如果您愿意,可以在 main 正文之前声明它,但在 main 内部为其分配一个值。看看保罗的回答
  • 其次,实际上以您想要的方式声明变量没有任何优势。它们是 全局 的,这意味着它们应该在 全局 范围内声明,而不是在其他地方。

原文由 sasha.sochka 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题