//下面的程序演示了指针没有被人为手动分配存储空间的错误

#include

int main()

{

int * p;

int i = 5;

*p = i;

printf("*p=%d\n", *p);

return 0;

}

指针变量一开始没有在程序中控制去分配内存单元,会导致,编译器自动分配一个临时的内存单元给p,

这个内存单元是不被控制的,当执行到*p = i;的时候,这个临时的内存单元中的值被改成了5,这是有很大

风险的,这个零时的内存单元中的值有可能是另外一个很重要的程序要使用,结果让你给改了,你还不知道

你改了什么地方的值。

VC6.0下编译这个程序会有警告,执行后会卡死。现在明白了吧,自己写的程序似乎编译没问题,但运行卡死了,

大多数情况下,这个C程序可能写的的很大问题。

编译器自动分配给变量的零时值称之为垃圾值,如果给一个指针变量一个垃圾值,不再给指针变量重新赋予新地址,

很可能就变成, 胡乱的指向不受控制的内存单元,不受控制改掉了内存单元中的值,写程序的人还没察觉到,

这是极其危险的。

//下面的程序演示了*q相当与整型变量,而p是整型指针变量,整型指针变量赋给整型变量

#include

int main()

{

int i = 5;

int * p;

int * q;

p = &i;

*q = p;

printf("*q=%d\n", *q);

return 0;

}编译时后程序会报错covert  from int * to int

c语言学指针变量,C语言指针变量学习五相关推荐

  1. c语言 乘号 指针 避免,C语言指针篇(一)指针与指针变量

    指针 1. 什么是指针? 2. 指针可不可怕? 3. 指针好不好玩? 4. 怎么学好指针? C语言是跟内存打交道的语言,指针就是内存地址.指针无处不在,指针并不可怕,相反,等你学到一定程度后,会有一种 ...

  2. c语言中什么是指针 什么是指针变量,C语言指针是什么?

    代码清单 1:自定义函数交换两个变量的值(错误的解决方法) #include #include /*--自定义函数:交换两个变量的值--*/ void swap(int a, int b) { int ...

  3. c语言的指针和java_C语言指针变量的定义和使用(精华)

    数据在内存中的地址也称为指针,如果一个变量存储了一份数据的指针,我们就称它为指针变量. 在C语言中,允许用一个变量来存放指针,这种变量称为指针变量.指针变量的值就是某份数据的地址,这样的一份数据可以是 ...

  4. c语言指针大全,C语言指针

    本篇文章帮大家学习c语言指针,包含了C语言指针使用方法.操作技巧.实例演示和注意事项,有一定的学习价值,大家可以用来参考. C语言中的指针是变量,也称为定位符或指示符,指向值的地址. 注意:指针是C语 ...

  5. jstl动态取变量_C语言的变量名

    变量名是用来标识某个内存块的 地址就是地址啦,如是变量名的话,用取地址运算符&就可以得到它标识的内存块的地址, 而指针变量呢,它本身也是一个变量名,只不过它标识的那块内存存放的是一个地址值 变 ...

  6. c语言指针概述,C语言指针概述.doc

    首先,我们来看一看指针有什么用? 讲道理的话,如果你到目前没有发现指针有什么用,那就不用,挺好的. 你看C++程序员做个软件也基本不会把C++的语言特性都用上是吧.你有数组,有结构体,有函数,什么事情 ...

  7. 易语言多级指针读取_C语言指针难吗?纸老虎而已,纯干货讲解(附代码)

    作者:21IC网络整理,排版:晓宇 微信公众号:芯片之家(ID:chiphome-dy) 指针对于C来说太重要.然而,想要全面理解指针,除了要对C语言有熟练的掌握外,还要有计算机硬件以及操作系统等方方 ...

  8. c语言引入指针的目的,指针,C语言指针完全攻略

    与其他高级编程语言相比,C 语言可以更高效地对计算机硬件进行操作,而计算机硬件的操作指令,在很大程度上依赖于地址. 指针提供了对地址操作的一种方法,因此,使用指针可使得 C 语言能够更高效地实现对计算 ...

  9. 求最大值最小值c语言指针,用C语言指针如何求最大值最小值

    问题描述:用C语言指针如何求最大值最小值 以下使一个简单的例子,用来说明指向函数的指针变量.定义两个函数max和min,分别用来求最大值和最小值.在主函数中根据用户输入的数字是1或者是2,使指针变量指 ...

  10. c语言指针课件,C语言指针-课件.ppt

    <C语言指针-课件.ppt>由会员分享,可在线阅读,更多相关<C语言指针-课件.ppt(73页珍藏版)>请在人人文库网上搜索. 1.2020年8月13日,中国科技大学信息学院, ...

最新文章

  1. 【UML】状态图Statechart diagram(转)
  2. 窗体DataGridView控件中按回车键时,单元格向下移动,如何能改成向右移动
  3. 【Paper】2019_Consensus Control of Multiple AUVs Recovery System Under Switching Topologies and Time D
  4. 三角窗 matlab,【matlab】矩形窗/三角窗/hanning窗/hamming窗/blackman窗的頻率響應圖
  5. Linux内核线程kernel thread详解--Linux进程的管理与调度
  6. [css] 使用css将图片转换成黑白的效果
  7. Windows中使用wget整站下载
  8. 今天的男生代表甲方的飞鸽传书
  9. (总结5)H5中新增的功能性事件
  10. oracle自定义长度异常,Oracle 自定义wmsys.wm_concat 避免长度限制
  11. CVPR2017-图像特征匹配-GMS:基于网格的运动统计的快速且极度鲁棒的图像特征匹配算法
  12. Python计算IV值
  13. ajaxpro 下载 dll 资源集锦及示例大结局
  14. Python面积计算器源代码
  15. 干货 :送你一份使用k近邻算法实现回归的实用指南(附代码、链接)
  16. imo教我们的互联网思维9大玩法
  17. 海量固定资产如何进行盘点?
  18. 现代控制原理专业词汇中英文对照
  19. 论文解读:AdderSR Towards Energy Efficient Image Super-Reso
  20. matlab-粒子群源码优化模糊隶属度函数值

热门文章

  1. 解决安装rrdtool遇到的一个问题
  2. ASP.NET页面刷新办法
  3. 工作流表单自定义功能的误区
  4. DWZ 在js中刷新某个navTab
  5. 存储过程中执行动态Sql语句
  6. js 小数取整的函数
  7. 不仅仅是浏览器 走近Chrome开发人员工具
  8. 130道ASP.NET面试题
  9. 反思避免只是小聪明:更加稳重 更加踏实
  10. java assert可以检查exception吗_检查胃病一定要做胃镜吗?这五种检查也可以筛查胃病疾病...