struct Books *struct_pointer;
struct_pointer = &Book1;
struct_pointer->title;
[dywang@deyu zzz]$ vim struct3.c
[dywang@deyu zzz]$ cat struct3.c
#include <stdio.h>
#include <string.h>
struct Books {
char title[50];
char author[50];
int book_id;
};
void printBook( struct Books *book ) {
printf( "book.title : %s\n", book->title);
printf( "book.author : %s\n", book->author);
printf( "book.book_id : %d\n", book->book_id);
book->book_id = 999999;
}
int main () {
struct Books book1;
struct Books book2;
strcpy( book1.title, "RHCSA");
strcpy( book1.author, "dywang");
book1.book_id = 123456;
strcpy( book2.title, "Python");
strcpy( book2.author, "Linda");
book2.book_id = 123321;
printBook( &book1 );
printf( "book1_id : %d\n", book1.book_id);
printBook( &book2 );
printf( "book2_id : %d\n", book2.book_id);
return 0;
}
[dywang@deyu zzz]$ gcc -o struct3 struct3.c
book_id=999999,退出函式後再列印 bbok1.book_id 變成 99999,book2.book_id 也是 999999。
[dywang@deyu zzz]$ ./struct3 book.title : RHCSA book.author : dywang book.book_id : 123456 book1_id : 999999 book.title : Python book.author : Linda book.book_id : 123321 book2_id : 999999