365直播电视版下载-beat365官网在线体育-beat365英国在线体育

C 语言中有哪些不同类型的指针?

C 语言中有哪些不同类型的指针?

C 语言中有哪些不同类型的指针?

cserver side programmingprogramming

指针是一个存储另一个变量地址的变量。

指针的语法如下:

pointer = &variable;

指针的类型

指针有八种不同的类型,如下所示 -

Null pointer

Void pointer

Wild pointer

Dangling pointer

Complex pointer

Near pointer

Far pointer

Huge pointer

Null 指针

在声明指针时分配空值即可创建 Null 空指针。

当您没有为指针分配任何地址时,此方法非常有用。Null 空指针始终包含值 0。

示例

以下是空指针的 C 程序 -

#include

int main(){

int *ptr = NULL; //null pointer

printf("The value inside variable ptr is:%d",ptr);

return 0;

}

输出

当执行上述程序时,它会产生以下结果 -

The value inside variable ptr is:

0

Void 空指针

Void 空指针没有与其关联的数据类型。空指针可以保存任何类型的地址,并且可以强制转换为任何类型。

它也被称为通用指针,没有任何标准数据类型。

使用关键字 void 创建空指针。

示例

以下是空指针的 C 程序 -

#include

int main(){

void *p = NULL; //void pointer

printf("The size of pointer is:%d",sizeof(p)); //size of p depends on compiler

return 0;

}

输出

当执行上述程序时,它会产生以下结果 -

The size of pointer is:8

Wild 指针

Wild 指针也称为未初始化指针。因为它们指向任意内存位置,可能导致程序崩溃或行为异常。

这种类型的 C 指针效率不高。因为它们可能指向某个未知的内存位置,这可能会导致程序出现问题,最终导致程序崩溃。

建议在使用Wild 指针时务必谨慎。

示例

以下是Wild 指针的 C 程序 -

#include

int main(){

int *p; //wild pointer

printf("%d",*p);

return 0;

}

Process returned -1073741819 (0xC0000005) execution time : 1.206 s

Press any key to continue

i.e. you won’t get output, some compilers show error message at output

相关文章

C 语言中文件处理的基本知识

C 程序重新声明全局变量

递归冒泡排序的 C 程序

C 语言中 scanf() 和 gets() 之间的区别

C 语言中 while(1) 和 while(0) 的区别

分治递归的高级主定理

用 C 语言计算没有连续 1 的二进制字符串的数量

C 中结构成员数组的深度复制

C 程序演示可变长度数组的用法

C 程序用于找出小于给定值的 AND、OR 和 XOR 运算的最大值

打印

下一节 ❯❮ 上一节

相关推荐