c语⾔中什么是指针初始化,C语⾔中的“char指针初始化”是什么
意思?
满意答案
gqtywh
c语言char的用法推荐于 2019.10.06
采纳率:53%    等级:8
已帮助:60⼈
char 指针,也就是char *类型。 其初始化本质上与其它变量初始化没有什么区别,就是赋予其⼀个初始化的值。
对于指针来说,在C语⾔中,就是⼀个地址。区分初始化情况,有四种表象:
1 初始化为空。即
char * str = NULL;
的形式,NULL在C语⾔中是特定的空指针,其值为0.在C语⾔中,以NULL作为指针的⼀个未⽣效状态,其本⾝是⼀个⾮法的地址值。
2 初始化为常量字符串地址。
char * str = "test";
常量字符串在运⾏时会被放在常量空间中,于是这样初始化后,地址是常量空间中的⼀个地址,对于该地址只能读取,不可写⼊。即str的值可以改,但是str指向的值是不可修改的。
3 初始化为变量地址。
这⾥的变量地址,包括全局变量,局部变量的地址,以及通过动态分配申请到的内存地址。
这种情况下,对指针指向的空间是可以修改的。
4 不做初始化。
这种情况在C语⾔中是允许的。如果为全局变量或静态局部变量,系统默认初始化为0值,即NULL。⽽对于局部变量,将是⼀个随机值。所以如果是局部变量不做初始化,在取其指向空间值前,必须为其指定⼀个合法的值,否则访问会出错。
00分享举报

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。