Structure pointer initialization method

Structure pointer must be initialized reproduced Forgot deposit 

 

struct student{  

  char *name;  

  int score;  

  struct student* next;  

} This, * stu1;   

 

int main () {   

  stu.name = (char *) malloc (sizeof (char));. / * 1 structure members need to initialize the pointer * / 

  strcpy(stu.name,"Jimy");  

  stu.score = 99;  

 

  stu1 = (struct student *) malloc (sizeof (struct student));. / * 2 * pointers to structures need to be initialized / 

  stu1-> name = (char *) malloc (sizeof (char));. / * 3 pointer structure pointer members also require initialization * / 

  stu.next  = stu1;  

  strcpy(stu1->name,"Lucy");  

  stu1->score = 98;  

  stu1->next = NULL;  

  printf("name %s, score %d \n ",stu.name, stu.score);  

  printf("name %s, score %d \n ",stu1->name, stu1->score);  

  free(stu1);  

 

Focus is malloc

Kernel is kmalloc

#include <linux/slab.h> void *kmalloc(size_t size, int flags);

The first argument to the size of the block kmalloc is to be allocated. The second parameter, allocation flag

Guess you like

Origin www.cnblogs.com/yl1995/p/11079809.html
Recommended