Форум программистов, компьютерный форум CyberForum.ru

Внешняя переменная в нескольких файлах - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Определить корректность введённого скобочного выражения на основе стека http://www.cyberforum.ru/cpp-beginners/thread640022.html
Задание: Написать программу для определения правильности введённого скобочного выражения на основе стека, реализованного с помощью статического массива. сабж. каким образом это можно сделать.
C++ Передача матрицы в функцию Доброго времени суток. Возникло несколько вопросов: Почему при вызове Matrix1 выдаётся ошибка, но в то же время Matrix2 работает нормально? const int M=10; const int N=7; void Matrix1(int N, int a); void Matrix2(int N, int a); int main() {......} http://www.cyberforum.ru/cpp-beginners/thread640018.html
C++ Перечислении: их ввод
Не могу понять как это реализовать: Вот сама задача. Есть Диски(CD/DVD). Пользователь вводит Названия диска (тип string). И выбирает CD или DVD(тип перечисление,). После этого что ввело надо вывести на экран
Вычислить первые 7 членов ряда C++
Мне нужно запрограммировать ряд. Вычислить первые 7 членов. Моя функция не работает. double HyperGeom(double a, double b, double c, double d) { double value = 1; double temp = 1; for (int i = 1; i <= 7; i++) {
C++ MinGW - как вывести список установленных модулей с версией? http://www.cyberforum.ru/cpp-beginners/thread639960.html
Имеем всем известный MinGW + MSYS. Задача: через Terminal MSYS (который внутри MinGW) вывести список установленных в MinGW пакетов (программ и библиотек), с указанием их версий. аналогичная задача в Cygwin осуществляется так: $ cygcheck -c $ apt-cyg show $ pkg-config --list-all также можно запустив Cygwin_WEB_Setup.exe - тоже увидеть какие пакеты и каких версий установлены, а какие...
C++ Сложное начало для новичка Здравствуйте, сделал тему для новичков, которые не понимают , что то в синтаксисе и зачем это использовать. Таких как я например, перехожу с Delphi. Вот говорят в. C++ указатели это все что без чего нельзя жить. Покажите простой пример с комментариями, как можно легче, а то в гугле что не смотрю и не вьежаю. какую книгу посоветуете по тоньше, без философии, желательно на примерах для... подробнее

Показать сообщение отдельно
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
20.08.2012, 12:49     Внешняя переменная в нескольких файлах
Если записать так
C
1
2
3
4
5
6
7
8
9
10
11
#include <stdio.h>  
void Print()
{
   printf("%d\n", i);
}
int i = 1;     /* внешняя переменная */
int main( ) 
{
   Print();
   return 0;
}
то это будет ошибкой, так как функция Print() не видит внешнюю переменную i. Поэтому если необходим доступ к внешней переменной до ее объявления или она определена в другом исходном файле, следует воспользоваться описанием extern
C
1
2
3
4
5
6
7
8
9
10
11
12
#include <stdio.h>  
void Print()
{
   extern int i;
   printf("%d\n", i);
}
int i = 1;     /* внешняя переменная */
int main( ) 
{
   Print();
   return 0;
}
А раз вы объявляете переменную вне функций, то extern писать не нужно.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru