Я делаю программу с функциями и глобальной переменной, идея заключалась в том, чтобы обрабатывать глобальную переменную в нескольких функциях, я не знаю, как делать глобальные функции, это то, что я пробовал:
#include<cmath>
#include <stdio.h>
#include <iostream>
using namespace std;
int number=3;
void main(){
cout<<number;
}
void main(){
но я понятия не имею о синтаксическом знаке на нем, потому что, если предполагается, number
что это глобальная переменная.
В чем проблема?
Вы правильно понимаете глобальные переменные.
Ваша ошибка.
Ваша проблема не в глобальных переменных. Как уже указывали другие пользователи, ваша функция
main
неверна; неверно, потому что он должен вернутьсяint
. Причина этого обязательства заключается в том, что (как сказано в стандарте языка C++ ) в противном случае ваша программа будет некорректной, я показываю ее вам, извлеченную непосредственно из стандарта (перевод и выделение мои):Итак, ваша синтаксическая ошибка связана с тем, что ваша функция
main
не соответствует стандарту. Бьюсь об заклад, даже ошибка компилятора говорит вам, что такая функция должна возвращать значениеint
.По поводу глобальных переменных.
Старайтесь не использовать глобальные переменные :
Я вижу здесь две ошибки: во-первых, вы используете там,
void main(){
где это должно бытьint main
, почему? потому что вы собираетесь вернуть целое число. Вторая ошибка, которую я вижу, заключается в том, что вы ее не возвращаете, то есть не добавляете возврат, как в следующем коде:Я рекомендую вам прочитать это: input_output в С++ и локальные и глобальные переменные в С++ int-main-vs-void-main-in-c
Проблема в том, что функция
main
всегда имеет типint
и должна возвращать число.Чего вы хотите добиться, используя глобальную переменную? Использование глобальных переменных не рекомендуется, и вы можете передать их по ссылке на свои функции. Например:
Попробуйте этот синтаксис , почему? потому что это стандарт в C/C++, a
int main
и соответствующий емуreturn 0
.