重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

c语言指针函数未赋值 c语言指针遇到的问题

在C语言中,创建一个指针变量,但是不赋值,是否就是空指针?

1、对于未初始化的变量,编译器会给它们一个默认值,这个默认值是未知的(也许是NULL,也许是其他的),任何使用未初始化的变量的行为都是有隐患的。

成都创新互联公司2013年成立,是专业互联网技术服务公司,拥有项目成都网站建设、网站制作网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元龙潭做网站,已为上家服务,为龙潭各地企业和个人服务,联系电话:028-86922220

2、空指针是其值为NULL或0的指针,在下认为称之为“指向”NULL或“指向”0的指针都是错误说法,因为若有int a,*p=,则称指针p指向了a,并不能说指针p指向了&a,只能说p的值是&a,不然就大错特错了。

3、返回的指针赋值给某个变量,以后就可以通过这个指针变量来使用(存储或者是读取)所分配的这一块内存区域了。所以就不清楚问题中说的空指针申请了内存所表达的意思。如果还有问题,请继续追问。

4、空指针是就是一个被赋值为0的指针。对于空指针值,一般的文档中倾向于用 NULL 表示,而没有直接说成 0。

C语言问题,为什么这个值没有赋进去?

1、是你对字符数组的使用没有掌握。xiao.name[i]是一个char类型的数组元素,不能将一个字符串常量的首地址赋值给它。要将字符串保存到字符中,应该使用strcpy函数。

2、的小数部分是0.5=0.5*1,即2的负1次方,是可以精确保存的,像0.125=0.5*0+0.25*0+0.125*1或0.625=0.5*1+0.25*0+0.125*1。像0.3永远无法用2的负N次方的和的精确表示,所以只能取近似值。

3、C语言中变量不赋初值是不能”使用“的。这个”使用“是指读取变量的内容。因为,未赋初的变量中存储的数据是个随机值,其值不确定。随机值的产生原因:变量都是存储在内存中的。

4、因为 你的结构变量是局部量,不是全局量,没有初始化,也没有赋过值,所以它的值是随机的。如果你把变量声明挪到 main()以前,处理成全局量,则在运行开始时,会自动初始化,清零。

5、c编程语言中变量要先定义,定义好了才可以使用,为了简洁,定义的时候就可以同时赋予初始值。int i;i=0;上面2个就可以合成一条语句 int i=0;有些编译器也会自动默认初始值的。这只是一种习惯吧,知道了。适应就行了。

C语言指针的赋值问题

1、因为“能直接给指针指向的数据”赋值,而这里的p还没有指向,所以不能赋值,这种指针有个名字叫“悬浮指针”,是不能给它赋值的。这样才可以:int a,*p=*p=7;实际上就是使a等于了7。

2、变量的指针就是变量的地址。存放变量地址的变量是指针变量。即在C语言中,允许用一个变量来存放指针,这种变量称为指针变量。因此,一个指针变量的值就是某个变量的地址或称为某变量的指针。

3、要将指针指向的值赋值到变量上,需要将指针指向的值取出,然后执行赋值操作。对指针取值需要使用取值运算符*,这个符号和乘相同,但功能不同。用于取值时,*为单目运算,与后续的指针相结合,实现取指针指向的值的效果。

C语言中,若是定义了指针但是没有赋予值,那么指针变量中储存的地址指向的...

不仅是二级指针,就一级指针用上面那种语法复制应该都没问题。

你要明白,指针变量有两个相关的值,一个是指针变量本身的内存地址,一个是该内存地址存储的数据,是另一个变量的地址。如:int *p;//定义一个指针变量,既然是变量,它本身就有地址,还没赋值,它里面的数据不确定。

初始化后,只是指向某个内存而已,没有初始化的指针是指向一个未知的内存地址,这样的指针是很危险的。一般我们定义一个指针变量就会给它初始化为空,以免造成的危险无法补救。

指针变量的值是指针,指针就是地址;指针变量指向的变量就不是地址了,而是一个具体的变量。


文章名称:c语言指针函数未赋值 c语言指针遇到的问题
地址分享:http://cqcxhl.cn/article/dehphoo.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP