Программы врежется прямо в инструкции, указанной в исходном коде (я не писал весь код, потому что это слишком долго)Изменение значения массива из функции в C
int main()
{
char screen[24][80];
//......every thing is well until this instruction
backgrounds(5,screen);
//......the program doesn't execute the rest of the code
}
//______________________________________________________
//this is a header file
void backgrounds(int choice,char **screen)
{
if(choice==5)
{
screen[18][18]='-';
screen[18][19]='-';
screen[18][20]='-';
}
}
2D-массив это не то же самое, что указатель на указатель. См. [This] (http://stackoverflow.com/questions/4470950/why-cant-we-use-double-pointer-to-represent-two-dimensional-arrays) – samgak
И вы проигнорировали предупреждения компилятора, потому что ... ? – Olaf
, также имеющий функцию в файле заголовка (обычно) Плохая идея (tm) – pm100