# include <stdio.h> # include <string.h> //strcpy() typedef struct { int number; char name[10]; } student, *pstudent; student struct_call_by_value (student boy) { boy.number = 16; strcpy(boy.name, "zhliao2"); //这里是对字符串复制 printf ("in function:\n"); printf ("number = &d, name = %s", boy.number, boy.name); return boy; } int main () { student boy = {20, "xixi"}; student boy2; printf ("before functinumbern\n"); printf ("number = %d, name = %s\n", boy.number, boy.name); boy2 = struct_call_by_value (boy); printf ("number = %d, name = %s\n", boy.number, boy.name); printf ("number = %d, name = %s\n", boy2.number, boy2.name); }