Я столкнулся с проблемой, когда я объявил функцию следующим образом:
struct my_struct get_info();
Он должен возвращать указатель на структуру, а затем в main этот указатель захватывается, например так:
struct my_struct *p_struct;
p_struct = get_info();
Затем я получил ошибку компилятора, говорящую о том, что он не может конвертировать из 'my_struct *' to 'my_struct.
Я посмотрел вокруг кода, который делает то же самое, и заметил, что в их прототипе и определении функции они имели * перед именем функцииПример:
struct my_struct *get_info();
После того, как я добавил в *, все было хорошо.Я не знаю, почему это все исправляет, и почему вы это сделаете.Вы делаете это только при возврате указателя структуры?Или есть другие случаи, которые вы хотели бы сделать это?Спасибо.