日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

C语言——指针与结构体 内存的动态分配

發布時間:2025/3/20 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C语言——指针与结构体 内存的动态分配 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

例一 :

1 #include <stdio.h> 2 #include <string.h> 3 4 struct Student { 5 int sid ; 6 char name[200] ; 7 int age ; 8 }; 9 10 void f(struct Student *p); 11 void g(struct Student *p); 12 void h(struct Student stu); 13 14 int main() 15 { 16 struct Student stu ; 17 18 f(&stu); 19 g(&stu); 20 h(stu); 21 22 //printf("%d %s %d \n" ,stu.sid , stu.name , stu.age);23 24 return 0 ; 25 } 26 27 void g(struct Student *p) //用指針可以減小內存占用 , 節省時間提高效率28 { 29 printf("%d %s %d \n", p -> sid , p -> name , p -> age); 30 } 31 32 void h(struct Student stu) //值傳遞33 { 34 printf("%d %s %d \n", stu.sid , stu.name ,stu.age); 35 } 36 37 void f(struct Student *p) //輸入函數38 { 39 (*p).sid = 23 ; //等價 p -> sid = 23 ;40 strcpy( p -> name , "zhangsan"); 41 p -> age = 34 ; 42 }

例二 :

?

1 //
2 // ——注釋部分為第二種方法——///
3 //
4 #include <stdio.h>
5 #include <malloc.h>
6
7 struct Student
8 {
9 int sid ;
10 int age ;
11 };
12
13 //struct Student *CreateStudent(struct Student **q);
14 struct Student *CreateStudent(void);
15 void ShowStudent(struct Student *);
16
17 int main()
18 {
19 struct Student *p ;
20
21 //p = CreateStudent(&p);
22 p = CreateStudent();
23 ShowStudent(p);
24
25 return 0 ;
26 }
27
28 //struct Student *CreateStudent(struct Student **q)
29 struct Student *CreateStudent(void)
30 {
31 /*
32 *q = (struct Student *)malloc(sizeof(struct Student));
33
34 (*q) -> sid = 78 ; // " -> "優先級大于" * "
35 (*q) -> age = 23 ;
36 return *q;
37 */
38 struct Student *p = (struct Student *)malloc(sizeof(struct Student));
39
40 p -> sid = 78 ;
41 p -> age = 23 ;
42
43 return p ;
44 }
45
46 void ShowStudent(struct Student *ps)
47 {
48 printf("%d %d \n" , ps -> sid , ps -> age);
49 }

轉載于:https://blog.51cto.com/699794/925327

總結

以上是生活随笔為你收集整理的C语言——指针与结构体 内存的动态分配的全部內容,希望文章能夠幫你解決所遇到的問題。

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