Я читал из книги о предварительном дефинировании, что,
Предварительное определение - это любое объявление внешних данных, которое не имеет спецификатора класса хранения и не имеет инициализатора. Предварительное определение становится полным определением, если конец единицы перевода достигнут, и определение не появилось с инициализатором для идентификатора
Пожалуйста, объясните, что означает вышеуказанное утверждение. Кроме того, разница между Декларацией и определением? Из-за этого я перепутался. :( И почему эта программа не дает ошибку:
#include <stdio.h>
int a; //Tentative definition
int a; //similarly this declaration too.
int main() //not getting any error with this code why its so?
{
printf("hi");
}
Кроме того, что не так с этим кодом:
#include<stdio.h>
printf("Hi");
int main(void){
return 0;
}