社区
C语言
帖子详情
C语言结构体指针未分配内存为什么可以直接使用?
da2650638
2012-09-24 07:45:30
结构体定义:
typedef struct
{
int i;
char c;
}Pointer;
主函数:
int main()
{
Pointer *p;
p->c = 'a';
p->i = 10;
printf("%d %c \n",p->i,p->c);
return 0;
}
打印结果是:10 a
没有错误,请问这是怎么回事?
...全文
493
15
打赏
收藏
C语言结构体指针未分配内存为什么可以直接使用?
结构体定义: typedef struct { int i; char c; }Pointer; 主函数: int main() { Pointer *p; p->c = 'a'; p->i = 10; printf("%d %c \n",p->i,p->c); return 0; } 打印结果是:10 a 没有错误,请问这是怎么回事?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
逆风而飞
2012-09-25
打赏
举报
回复
汗,这个是直接由系统分配,你又不是在开发windows程序
linuxblack125125
2012-09-25
打赏
举报
回复
什么是好的程序?什么是错误的思想?不是一次运行结果就能说明白的!
Damn_boy
2012-09-25
打赏
举报
回复
胆子太大了
赵4老师
2012-09-25
打赏
举报
回复
做违法的事不一定每次都被抓。
hu7324829
2012-09-25
打赏
举报
回复
gcc 运行时 段错误.
baichi4141
2012-09-25
打赏
举报
回复
没有分配给你的内存,你也可以任意访问
不过等你的使用和系统的使用相冲突的时候,后果自负
左眼看到鬼
2012-09-25
打赏
举报
回复
用gcc,g++运行时都是段错误。
AnYidan
2012-09-25
打赏
举报
回复
换 c++ 的 编译器 试试!
tcm86079572
2012-09-25
打赏
举报
回复
应该是指针随机分了个内存 恰好呢 这个内存能进行操作 !
wanglu343280746
2012-09-25
打赏
举报
回复
[Quote=引用 9 楼 的回复:]
做违法的事不一定每次都被抓。
[/Quote]
++
ouPuso
2012-09-25
打赏
举报
回复
指针是地址的容器,即使没有分配也不代表里面没有值,只不过是没有意义的值而已.
读没有问题并不代表写也没有问题,写现在没有问题并不代表程序就没有问题
AIGPTchina
2012-09-24
打赏
举报
回复
指针是在堆里,必须申请。申请后要制定一个地方给他。
liduboss
2012-09-24
打赏
举报
回复
指针变量默认初始化并不一定为NULL(不同的编译器有不同的效果)。
da2650638
2012-09-24
打赏
举报
回复
#1楼麻烦说的具体一点,没听明白......
sublimepan
2012-09-24
打赏
举报
回复
p有个初始值,该值对应的内存恰好可以操作呗。
深入理解
C语言
指针和结构体
本课程的主要目的是通过介绍
C语言
的指针、指针变量、静态内存分配、动态内存分配以及结构体等知识,实现
C语言
到Java以及Python编程的一个完美过渡.
结构体指针
的内存空间分配问题(
C语言
)
结构体指针
的内存空间分配问题(
C语言
) 提示:文章结尾有两个代码的合并的精简版!
结构体指针
在
使用
前,必须
分配内存
空间给该
结构体指针
,否则会导致数据无法录入;在给
结构体指针
分配内存
空间时又分两种情况,一种是在自定义函数内对
结构体指针
进行内存分配;另一种是在主函数内对
结构体指针
分配内存
空间。 下面让我们通过具体的代码和分析深入剖析其中的区别。
结构体指针
内存在自定义函数中分配 所给代码的含义是:创建一个结构体 指针,通过自定义函数对该
结构体指针
进行初始化(包括内存分配和数据的初始化),主要解决的是结构体
分享一个
结构体指针
动态
分配内存
的
C语言
程序
C语言
中不支持用变量来定义数组的个数,因此
C语言
中想要动态
分配内存
,常用的方法是指针+malloc()\calloc()\realloc()的方式。 这里仅针对
结构体指针
+calloc()实现“动态结构体数组”。这里之所以称之为”动态结构体数组“,是因为该种方法定义出来的本质上不是结构体数组,当在功能上却与结构体数组无大异。 同时在该程序中,我将结构体中的字符串数组全部定义为字符指针变量,并在...
c语言
结构体学习整理(结构体初始化,
结构体指针
)
c语言
中交换两个结构体的值(
结构体指针
) 1关于语言的结构体: 首先我们为什么要用到结构体,我们都已经学了很多int char …等类型还学到了同类型元素构成的数组,以及取上述类型的指针,在一些小应用可以灵活
使用
,然而,在我们实际应用中,每一种变量进行一次声明,再结合起来显然是不太实际的,类如一位学生的信息管理,他可能有,姓名(char),学号(int)成绩(float)等多种数据。如果把这些数据...
C语言
定义了一个结构体怎么
分配内存
?C\C++中结构体变量与
结构体指针
内存分配问题?
C语言
定义了一个结构体怎么
分配内存
?C\C++中结构体变量与
结构体指针
内存分配问题?
C语言
69,369
社区成员
243,082
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章