头部左侧文字
头部右侧文字
当前位置:网站首页 > 资讯 > 正文

c语言指针赋值给指针,c语言指针赋值和地址赋值

作者:admin日期:2024-01-04 03:00:30浏览:57分类:资讯

c语言中能把指针变量赋值给指针变量嘛?

指向指针的指针型变量也是指针变量。当然可以赋值。只是你的指针变量必须先指向一个地址的前提下。

可以。加一个强制类型转换就行了。要注意转换后的类型要和指针指向的类型一致,并且这个整数的位长不能超过指针的位长。

可以,但int *p;*p=7;这样不行。因为“能直接给指针指向的数据”赋值,而这里的p还没有指向,所以不能赋值,这种指针有个名字叫“悬浮指针”,是不能给它赋值的。

可以,现在的编译器会自动将赋给指针的整形数据强制转换成指针类型的。在32位系统下,一个指针本来就是一个32位整数,只是这个整数是某个变量的地址。

C语言可以用指针数组赋值给数组指针吗?

是可以的。我想补充楼上的 就是这两个指针变量同时指向一个地方 内存 指向指针的指针的指针是二级指针。它指向指针。

} C语言 怎么把指针的值 赋给另一个数组 循环赋值, 或者直接strcpy。因为这里是字符串。

可以。指针作为实体,是一个用来保存一个内存地址的计算机语言中的变量。数组,是有序的元素序列。若将有限个类型相同的变量的集合命名,那么这个名称为数组名。

可以,但int *p;*p=7;这样不行。因为“能直接给指针指向的数据”赋值,而这里的p还没有指向,所以不能赋值,这种指针有个名字叫“悬浮指针”,是不能给它赋值的。

charss[]=hello;s=ss;错误原因是:是您不能使用赋值语句将一个字符数组直接赋值给一个字符串数组,也就是说,必须使用strcpy()函数来实现一个字符串的副本(在c语言中,但是在c++的string类中,上面的赋值是正确的)。

可以的,数组名就是数组第一个元素的指针,所以可以赋值给相同类型的指针变量,此时,数组名和这个指针都指向这个数组的开头。

在C语言中能否直接给指针指向的数据赋值?为什么

1、不可以 原因很简单 one,two是存在静态存储区的,这个地址中的值不能被修改。

2、因此这种方法是十分危险的。给指针赋值一般有两种方法,一种是将已经存在的变量的地址传递给指针,格式为:p=另一种是首先为指针申请指向的合法内存,C语言中用函数malloc(),然后给已申请的地址赋值,如*p=6。

3、B选项不能将一个变量直接赋值给指针变量。选项C,C选项中的赋值语法是错误的,正确的赋值语法应该是和A选项相同。D选项的错误类型和C选项的类似,所以综合以上分析,正确的答案为A。

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

5、指向指针的指针型变量也是指针变量。当然可以赋值。只是你的指针变量必须先指向一个地址的前提下。

c语言指针赋值问题?

1、请分清“指针本身的值”和“指针指向的地址中的值”这两者的区别。指针本身的值就是地址。

2、要是都在一个函数内是不会有问题的。 你的问题应该不在上面所述的部分。

3、p为指针,地址是未知的,如果直接赋值 p=a;这样编译可以通过,但是会产生警告,p的地址是随机分配的,这样对未知的地址赋值很危险,可能会覆盖掉某些重要数据,所以避免这种危险,在定义指针时注意初始化,也就是赋值。

4、因此这种方法是十分危险的。给指针赋值一般有两种方法,一种是将已经存在的变量的地址传递给指针,格式为:p=另一种是首先为指针申请指向的合法内存,C语言中用函数malloc(),然后给已申请的地址赋值,如*p=6。

5、n 是整型变量,p是指向整型变量的指针,q是指向指针的指针。也就是 n中存放整型数,p中存放整形数的地址,q中存放指针的地址。 * 在运算中的作用是代表取指针所指向的变量。

暂无评论,来添加一个吧。

取消回复欢迎 发表评论: