У меня есть две функции находящихсе в разных файлах. Например
Файл 1
void f1()
{
int x;
int x1;
...
int x100;
f2();
}
Файл 2
void f2()
{
x=1;
x2=1;
...
x100=1;
}
Как сделать чтобы в функции f2 были видны переменные объявленные в f1?
Здравствуйте, shardim, Вы писали:
S>У меня есть две функции находящихсе в разных файлах. Например
S>Файл 1
S>void f1()
S>{
S> int x;
S> int x1;
S> ...
S> int x100;
S> f2();
S>}
S>Файл 2
S>void f2()
S>{
S> x=1;
S> x2=1;
S> ...
S> x100=1;
S>}
S>Как сделать чтобы в функции f2 были видны переменные объявленные в f1?
Лучше вообще не привыкать к глобальным переменным.
Файл 1
void f1()
{
int x;
int x1;
...
int x100;
f2(x, x2, ..., x100);
}
Файл 2
void f2(int& x, int& x2, ... ,int& x100)
{
x=1;
x2=1;
...
x100=1;
}
Лучше так
Файл 1
void f1()
{
int x[100];
f2((int*)x);
}
Файл 2
void f2(int* x)
{
for(int n = 0; n < 100; ++n)
x[n] = 1;
}