当前位置:首页 » 编程语言 » c语言如何判断指针已经初始化
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言如何判断指针已经初始化

发布时间: 2023-05-22 08:09:43

1. c语言指针的初始化!!!!

指针指向变量后才能操作,如:int *pt,a;pt=&a;*pt=5;第二个char *i;i="Hello";这样是正确的.

2. C语言文件输出指针初始化

FILE*fp_in=NULL,*fp_out=NULL;
if(fp_in)fclose(fp_in);
if(fp_out)fclose(fp_out);

把你那三行,改成我这样的,因为可能没有初始化啊。。。

3. C语言的char指针初始化理解

char 指针,也就是char *类型。 其初始化本质上与其它变量初始化没有什么区别,就是赋予其一个初始化的值。
对于指针来说,在C语言中,就是一个地址。区分初始化情况,有四种表象:
1 初始化为空。即
char * str = NULL;
的形式,NULL在C语言中是特定的空指针,其值为0.在C语言中,以NULL作为指针的一个未生效状态,其本身是一个非法的地址值。

2 初始化为常量字符串地址。
char * str = "test";
常量字符串在运行时会被放在常量空间中,于是这样初始化后,地址是常量空间中的一个地址,对于该地址只能读取,不可写入。即str的值可以改,但是str指向的值是不可修改的。

3 初始化为变量地址。
这里的变量地址,包括全局变量,局部变量的地址,以及通过动态分配申请到的内存地址。
这种情况下,对指针指向的空间是可以修改的。

4 不做初始化。
这种情况在C语言中是允许的。如果为全局变量或静态局部变量,系统默认初始化为0值,即NULL。而对于局部变量,将是一个随机值。所以如果是局部变量不做初始化,在取其指向空间值前,必须为其指定一个合法的值,否则访问会出错。

4. c语言指针初始化

注意了,a只是一个双重指针,不是数组。还有new这个东西是C++中的。C中用malloc分配内存,再初始化。