#include <stdio.h>
#include <string.h>
struct students{
char name[50];
int age;
int height;
};
int main(int argc, char **argv)
{
struct students manoj;
strcpy(manoj.name, "manojkumar");
manoj.age = 15;
displaymanoj(&manoj); //print testing \n , name , age
return 0;
}
void displaymanoj(struct students *ptr) {
printf("Testing...............DEBUG\n");
printf("%s\t%d\n", ptr->name,ptr->age);
printf("END OF TEST: SUCESS -manoj-");
}
Я изучаю C, и он работает там, где используется указатель, указывающий на структурную переменную. Я получаю правильный вывод при запуске программы. Просто чтобы моя Geany IDE выдала какое-то сообщение, которое я хотел бы знать, почему.53: 6: предупреждение: конфликтующие типы для функции
My Compiler Сообщение, как показано ниже:
Да, я исправил это, объявив выше основного. Что на самом деле означает «объявление implcit» – ManojKumar
Мне 16 лет и новичок в программировании c – ManojKumar
Когда вы впервые компилируете функцию, и если она еще не увидела объявление этой функции, то компилятор неявно объявляет один с 'int' как возвращаемым типом. Это называется объявлением неявной функции, поскольку компилятор делает это за вас. Это старое правило, существовавшее до C99. В C99 это правило было удалено, и теперь все функции должны иметь декларации (определения также предоставляют декларации - вот как работает функция над main()). –