Как правильно передать переменные из функции в СИ

У меня есть функция main, где я создаю две переменные, и вызываю функцию input где через стандартный ввод, ввожу данные. Проблема в том что вывод в input верный, а main нет, что я делаю не так?

main

head_input

input

output


Ответы (1 шт):

Автор решения: Harry

Раз у вас чистый C, в котором нет ссылок — передавайте через адреса.

input(int * rows, int* cols)
{
    ...
    scanf("%d",rows);
    ...
}


int main()
{
    ....
    input(&rows, &cols);
    ....
}

Так, как передаете вы — вы по сути передаете копии переменных.

→ Ссылка