首页 > 其他分享 >C语言 特殊指针 (使用禁忌)

C语言 特殊指针 (使用禁忌)

时间:2023-02-04 13:55:06浏览次数:33  
标签:int 禁忌 C语言 large INT PRINT pointer 指针

NULL

野指针

pointer_at_large 就是一个野指针

 

 1 #include <stdio.h>
 2 #include <io_utils.h>
 3 
 4 int *pointer_at_large;
 5 
 6 void DangerousPointer() {
 7   int a = 2;
 8   pointer_at_large = &a;
 9   // ...
10   pointer_at_large = NULL;
11 }
12 int main() {
13 //  int *p = (int *)0x65fe18; // DANGEROUS !!!
14 //  PRINT_INT(p);
15 //  PRINT_HEX(&p);
16 //  PRINT_INT(*p);
17   int *p = NULL;
18   //*p = 3; // error!!
19 
20   if (p) {
21     PRINT_INT(21321);
22   }
23   DangerousPointer();
24   if (pointer_at_large) {
25     PRINT_INT(*pointer_at_large);
26   }
27   return 0;
28 }

 

标签:int,禁忌,C语言,large,INT,PRINT,pointer,指针
From: https://www.cnblogs.com/liumy/p/17091345.html

相关文章

  • C语言学习 指针
    编译器是visualstudio   代码1#include<stdio.h>2#include<io_utils.h>34intmain(){5inta;6scanf("%d",&a);78int*p=&a......
  • C语言结构体对齐,超详细,超易懂
    结构体对齐规则结构体的第一个成员总是存放在结构体变量开辟的空间的起始地址其它成员变量要存储在一个名叫对齐数的整数倍的地址结构体总大小为最大对齐数的整数倍,结构体......
  • 【C语言 数据结构】数组与对称矩阵的压缩存储
    文章目录​​数组的定义​​​​数组的顺序表示和实现​​​​顺序表中查找和修改数组元素​​​​矩阵的压缩存储​​​​特殊矩阵​​​​稀疏矩阵​​数组的定义提到数组......
  • 前缀和-差分-双指针(上)
    1.前缀和前n个元素的和作为当前元素的值a为元素数组s[i]为前缀和数组一维前缀和s[i]=s[i-1]+a[i]s[m]-s[n]=a[n+1]+...+a[m]m>n二维前缀和s[i][j]=s[i-1]......
  • 模拟实现不受限制的字符串函数--C语言版
    C语言中提供了许多十分好用的库函数,一旦我们掌握了它们,我们使用C语言写代码就会变得更加得心应手。1.strlenstrlen函数就是计算字符串的长度的,它会一直读取到\0,它的返回值就......
  • 二分查找——C语言描述
    二分查找——C语言描述目录二分查找——C语言描述0测试用例框架1定义2代码4测试用例0测试用例框架https://blog.csdn.net/m0_59469991/article/details/127137119?......
  • 冒泡排序——C语言描述
    冒泡排序——C语言描述目录冒泡排序——C语言描述0测试用例框架1定义2代码4测试用例0测试用例框架https://blog.csdn.net/m0_59469991/article/details/127137119?......
  • C语言-猜数游戏
    整理文件发现以前写的C语言猜数游戏1-效果演示2-程序#include<stdio.h>#include<stdlib.h>#include<time.h>intmain(){ srand(time(0)); intnumber=rand......
  • 指针和引用的区别
    指针和引用的对比指针是一种数据类型,它是专门用来存放地址的变量引用实际上是一种隐式指针,它是对象建立的一个别名,通过&来实现。不同点1、指针是一个变量,只不过这个变......
  • 记录一次容易混淆的指针正确打开方式
    //c#中对应c/c++的定长数组定义publicfixedfloatmp_osi[4];//表示float数组,大小4个限制:只能在结构体中进行定义,作为结构体中的字段使用//c#中使用指针fixed(float*......