Я читал несколько примеров кода, и они возвращали const int. Когда я попытался скомпилировать код примеров, я получил ошибки, касающиеся конфликтующих типов возвращаемых данных. Поэтому я начал искать, думая, что проблема в const (когда я его удалял, код работал нормально, не только компилировался, но и работал как ожидалось). Но мне никогда не удавалось найти информацию, относящуюся к константному типу возврата (я это сделал для структур / параметров / и т. Д., Но не возвращаемых типов) Поэтому я попытался написать кусок кода, чтобы просто показать, что может сделать const. Я придумал это:
#include <stdio.h>
int main() {
printf("%i", method());
}
const int method() {
return 5;
}
И когда я скомпилирую это, я получаю:
$ gcc first.c
first.c:7: error: conflicting types for ‘method’
first.c:4: note: previous implicit declaration of ‘method’ was here
Однако всякий раз, когда я удаляю const, он, как и ожидалось, просто печатает 5, а жизнь продолжается. Итак, может кто-нибудь сказать мне, что const должен означать при использовании в качестве типа возврата. Спасибо.