通過函式完成對結構體變數的輸入輸出
阿新 • • 發佈:2020-11-19
/* //2020年11月19日17:24:42 #include<stdio.h> #include<string.h> void InputStudent(struct Student); struct Student { int age; char sex; char name[100]; }; int main(void) { struct Student st; InputStudent(st); printf("%d %c %s",st.age,st.sex,st.name); return 0; } void InputStudent(struct Student stu) { stu.age=10; strcpy(stu.name,"zhangsan"); stu.sex='F'; }*/ /* #include<stdio.h> #include<string.h> void InputStudent(struct Student *); struct Student { int age; char sex; char name[100]; }; int main(void) { struct Student st; InputStudent(&st); printf("%d %c %s",st.age,st.sex,st.name); return 0; } void InputStudent(struct Student * pstu) { pstu->age=10; strcpy(pstu->name,"zhangsan"); pstu->sex='F'; }*/ /* #include<stdio.h> #include<string.h> //通過函式完成結構體變數的輸入和輸出 //2020年11月19日17:34:42 void InputStudent(struct Student *); void OutputStudent(struct Student ); struct Student { int age; char sex; char name[100]; }; int main(void) { struct Student st; InputStudent(&st);//對結構體變數輸入,要設計修改,必須傳送st的地址 //printf("%d %c %s",st.age,st.sex,st.name); OutputStudent(st);//對結構體變數輸出,可以傳送st的地址也可以傳送st,因為不涉及修改 return 0; } void InputStudent(struct Student * pstu) { pstu->age=10; strcpy(pstu->name,"zhangsan"); pstu->sex='F'; } void OutputStudent(struct Student ss) { printf("%d %c %s",ss.age,ss.sex,ss.name); }*/ #include<stdio.h> #include<string.h> //通過函式完成結構體變數的輸入和輸出 //2020年11月19日17:41:45 void InputStudent(struct Student *); void OutputStudent(struct Student *); struct Student { int age; char sex; char name[100]; }; int main(void) { struct Student st; InputStudent(&st);//對結構體變數輸入,要設計修改,必須傳送st的地址 //printf("%d %c %s",st.age,st.sex,st.name); printf("%d\n",sizeof(st)); OutputStudent(&st);//對結構體變數輸出,可以傳送st的地址也可以傳送st,因為不涉及修改 //但為了減少記憶體佔用,也為了提高執行速度,推薦傳送地址 return 0; } void InputStudent(struct Student * pstu) { pstu->age=10; strcpy(pstu->name,"zhangsan"); pstu->sex='F'; } void OutputStudent(struct Student * ss) { printf("%d %c %s",ss->age,ss->sex,ss->name); }