设为首页
收藏本站
用户名
Email
自动登录
找回密码
密码
登录
注册
快捷导航
平台
Portal
论坛
BBS
文库
项目
群组
Group
我的博客
Space
搜索
搜索
热搜:
shell
linux
mysql
本版
用户
LinuxSir.cn,穿越时空的Linuxsir!
»
论坛
›
编程开发讨论区 —— LinuxSir.cn
›
Linux 程序设计专题讨论
›
指针是否一定要初始化?
返回列表
查看:
937
|
回复:
7
指针是否一定要初始化?
[复制链接]
seablue
seablue
当前离线
积分
999
IP卡
狗仔卡
发表于 2004-6-1 23:45:11
|
显示全部楼层
|
阅读模式
我在rh9下有时候没有初始化也一样能用。
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
显身卡
luoyong
luoyong
当前离线
积分
735
IP卡
狗仔卡
发表于 2004-6-2 01:13:13
|
显示全部楼层
我用Debian,很容易Segment Fault
觉得最传统的方法应当初始化,至少要在后面给一个值的
回复
支持
反对
使用道具
举报
显身卡
koala114
koala114
当前离线
积分
471
IP卡
狗仔卡
发表于 2004-6-2 06:59:26
|
显示全部楼层
[PHP]
void Function()
{
int *p;
int val;
val=*p; //Bad enough
*p=val; //Much worse
}
[/PHP]
指针P从未被赋值,因此它含有的数据完全可能是杂乱的,所以看val=*p;这句就清楚了吧
回复
支持
反对
使用道具
举报
显身卡
kj501
kj501
当前离线
积分
5317
IP卡
狗仔卡
发表于 2004-6-2 08:08:18
|
显示全部楼层
语法上没有要求必须初始化,但初始化后再使用指针是个好习惯。
回复
支持
反对
使用道具
举报
显身卡
seablue
seablue
当前离线
积分
999
IP卡
狗仔卡
楼主
|
发表于 2004-6-2 14:35:43
|
显示全部楼层
:thank all of U.
进一步了解了指针了
回复
支持
反对
使用道具
举报
显身卡
chice
chice
当前离线
积分
64
IP卡
狗仔卡
发表于 2004-6-2 19:08:22
|
显示全部楼层
如果不初始化,指针指向未知的地址,如果读写,会得到不可预测的数据或破坏未知的内存中的数据(或读写被操作系统禁止),引发错误。
因此必须初始化。
回复
支持
反对
使用道具
举报
显身卡
kj501
kj501
当前离线
积分
5317
IP卡
狗仔卡
发表于 2004-6-2 19:11:28
|
显示全部楼层
其实不单是指针,其它类型的变量最好在声明时就初始化,设有正确的初始化常常是程序的错误来源之一。
回复
支持
反对
使用道具
举报
显身卡
jetwins
jetwins
当前离线
积分
188
IP卡
狗仔卡
发表于 2004-6-4 11:38:45
|
显示全部楼层
init 是个很好的习惯
回复
支持
反对
使用道具
举报
显身卡
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册
本版积分规则
发表回复
回帖后跳转到最后一页
浏览过的版块
Mandriva Linux
Copyright © 2002-2023
LinuxSir.cn
(http://www.linuxsir.cn/) 版权所有 All Rights Reserved.
Powered by
RedflagLinux!
技术支持:
中科红旗
|
京ICP备19024520号
快速回复
返回顶部
返回列表