У меня есть следующая программа в двух файлахПроблемы доступ к внешнему поплавку массиву
main.cpp
float POW10[300];
main(0
{
Fill_POW10();
}
Fill.cpp
extern float *POW10;
Fill_POW10()
{
for(int i=0;i<300;i++)
{
POW10[i]=i;
}
}
Это разбилось с ошибкой сегментации. Когда я проверяю, POW10 имеет значение NULL. Однако если я изменю Fill.cpp на
extern float POW10[];
Fill_POW10()
{
for(int i=0;i<300;i++)
{
POW10[i]=i;
}
}
код работает нормально. Я думал, что POW10 фактически реализован как указатель на поплавки, и поэтому коды должны быть идентичными. Не могли бы вы объяснить, почему это не так.
Спасибо большое .. Я получаю полную картину сейчас. – drcyber