Кто-нибудь может сказать мне, что не так в следующем коде, когда я инициализирую глобальный массив и хочу напечатать его значение вне функции main ()
#include <iostream>
using namespace std;
int global_array[5] = {10,20,30,40,50};
cout << global_array[2];
int main()
{
cout << "Hello World!" ;
}
Ошибка продолжает появляться
error: 'cout' does not name a type|
Заявление cout << global_array[2];
не является декларацией (это выражение). Только объявления допускаются вне функций.
Итак, если вы хотите напечатать что-нибудь за пределами main
функция, вы можете сделать это только с помощью выражения в другой функции.
Я думаю, проблема в том, что у вас есть код, который выполняет печать, вне какой-либо функции. Операторы в C ++ должны быть внутри функции. Например:
#include <iostream>
using namespace std;
void hello();
int global_array[5] = {10,20,30,40,50};
void hello()
{
cout << global_array[2];
}
int main()
{
hello();
cout << "Hello World!" ;
}
Прежде чем задать вопрос, вы можете выполнить поиск: «Cout» не называет тип
Спасибо вам.
если вы хотите вызвать его извне основного, он должен быть в функции примерно такой
#include <iostream>
using namespace std;
int global_array[5] = {10,20,30,40,50};
int pre()
{
cout << global_array[2];
return 0;
}
int x = pre();
int main()
{
cout<<"Hello World";
return 0;
}
как я уже упоминал в комментарии, это можно сделать с помощью классов C ++.
#include <iostream>
int global_array[5] = { 10,20,30,40,50 };
struct foo
{
foo()
{
std::cout << global_array[2] << std::endl;
}
};
foo f;
int main()
{
}