日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

如何用函数初始化结构体

發布時間:2024/1/17 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 如何用函数初始化结构体 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

問題

這里主要討論函數的參數。應該是結構體呢。還是結構體的地址,還是二者都行。

實驗證明,僅僅能用結構體的地址。


代碼

#include<stdio.h> #include<math.h> #include<stdlib.h>typedef struct {int a; //"int a=0;" is wrongint b[10]; }STU;void init_struct_point(STU *s){ //參數為數組指針s->a=100;s->b[0]=5;s->b[1]=7;printf("in f_point(), s->a %d\n",s->a);printf("in f_point(), s->b[0] %d\n\n",s->b[0]); }void init_struct(STU s){ //參數為數組s.a=1;s.b[0]=2;s.b[1]=3;printf("in f(), s.a %d\n",s.a);printf("in f(), s.[0] %d\n\n",s.b[0]); }int main(){STU s;printf("s=%d \t &s=%d\n\n",s,&s);init_struct_point(&s); //"s1"會引發編譯錯誤printf("s=%d \t &s=%d\n\n",s,&s);printf("out f_point(), s.a %d\n",s.a);printf("out f_point(), s.b[0] %d\n",s.b[0]);printf("out f_point(), s.b[1] %d\n\n",s.b[1]);init_struct(s); //"&s1"會引發編譯錯誤printf("out f(), s.a %d\n",s.a);printf("out f(), s.b[0] %d\n",s.b[0]);printf("out f(), s.b[1] %d\n\n",s.b[1]);system("pause");return 0; }



執行結果


遺留問題

1.結構體變量名到底是什么。請看s以及&s?

2.結構體變量名 和 結構體數組變量名 有什么差別和聯系? http://blog.csdn.net/hiboy_111/article/details/44454149



總結

以上是生活随笔為你收集整理的如何用函数初始化结构体的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。