C语言程序,这样写书上说危险,会死机!这是为什么??char *str;scanf(“%s”,st

C语言程序,这样写书上说危险,会死机!这是为什么??char *str;scanf(“%s”,st,第1张

首先要明白str是一个指针,它存放的是计算机内的一个地址。那么按照你的写法,先声明这个指针,然后输入数据存放到这个地址起始的数据段内。如果这个数据段正好是计算机系统正在占用的内存,有重要数据,那么数据就被你输入的数据覆盖了,从而系统无法正常运行。当然这只是一种可能,也许你输入的数据被存放到了一个没有被使用的内存段中,那么它是没问题的。工程上,在都是先把str指向NULL,然后再使用,也即char *str=NULL。这样就安全了。

从你给的信息也说不清楚,一般一些对内存分配有特殊要求的VI会出现这种情况,如波形图表控件,对外部dll的调用等,我认为和labview本身关系最大,但不排除另外两种,你可以找些关于labview内存分配、占用相关的帮助文件看下。

这是word“插入模式”与“改写模式”的问题

正常情况下是“插入模式”

而你出现这种情况,则是“改写模式”

这两种模式的切换方法:

一种:按一下键盘上的insert键就可以了

另一种:直接用鼠标双击word底端状态栏上的“改写”,使其变为灰色,就恢复到“插入模式”了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11910205.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存