标题:关于结构和结构体指针的问题
只看楼主
cr51k2
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2020-7-20
结帖率:0
已结贴  问题点数:20 回复次数:3 
关于结构和结构体指针的问题

一般,我们都是使用①那种方法求得所需内存,但我发现②那种方法也可以使用,这是为什么呢?
搜索更多相关主题的帖子: 方法 内存 结构 结构体 指针 
2020-07-20 18:30
cr51k2
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2020-7-20
得分:0 

①求得的内存是结构大小,②求得的内存是结构指针的大小
2020-07-20 18:31
纯蓝之刃
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:76
帖 子:554
专家分:3690
注 册:2019-7-29
得分:10 
第一条是这个结构体变量占用的内存长度。第二个是指向这个结构体类型的指针的长度,一般为int类型长。

一沙一世界,一花一天堂。无限掌中置,刹那成永恒。
2020-07-21 08:53
fulltimelink
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:7
帖 子:171
专家分:752
注 册:2020-4-1
得分:10 
malloc的参数是限制至少分配多少内存,使用超出限制的堆内存,可能会引发不可预期的错误。

程序代码:
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include <string.h>
int main(void)
{
    char * a = (char *)malloc(5 * sizeof(char));
    strcpy(a, "1234567890");
    printf("%s", a);
    return 0;
}


2020-07-21 08:58



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-502574-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.579811 second(s), 9 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved