How to declare global variable inside function?

There is no way to declare it the way you want. And that's it.

But:

  • First, if you want you can declare it before the main body but assign a value to it inside main. Look Paul's answer for that
  • Second, actually there is no advantage of declaring variables the way you want. They are global and that means they should be declared in the global scope and no other places.

You have two problems:

  1. main is not a loop. It's a function.

  2. Your function syntax is wrong. You need to have parentheses after the function name. Either of these are valid syntaxes for main:

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

Then, you can declare a local variable inside main like so:

int main() {
  int local_variable = 0;
}

or assign to a global variable like so:

int global_variable;

int main() {
  global_variable = 0;
}