Hallo, ich bin ein Anfänger und versuche, einige Beispiele für Zeiger auf Funktionen auszuarbeiten. Ich kann meinen Code nicht einmal kompilieren, er zeigt die folgende Meldung an. Ich kann nicht feststellen, warum ich die Kompilierungsfehler bekomme.
/tmp/cc0qghbo.o: In function `main':
pointer_to_function_inside_structure.c:(.text+0x88): undefined reference to `func_ptr'
collect2: ld returned 1 exit status
hier ist mein Code, bitte sagen Sie mir, was ich falsch mache
#include<stdio.h>
#include<stdlib.h>
struct student_data
{
char *name;
int roll_num;
int marks;
void (* func_ptr)(struct student_data *ptr);
};
void print_data(struct student_data *ptr);
void print_data(struct student_data *ptr)
{
printf("\nNAME OF THE STUDENT %s", ptr -> name);
printf("\nROLL NUMBER OF STUDENT %d", ptr -> roll_num);
printf("\nMARKS OF STUDENT %d\n", ptr -> marks);
}
int main()
{
struct student_data *ptr;
ptr -> name = "ajish";
ptr -> roll_num = 2;
ptr -> marks = 50;
ptr -> func_ptr = &print_data;
func_ptr(ptr);
}