为您找到"
C语言int a=100, *p=&a为什么打印了来的是100呢
"相关结果约100,000,000个
c语言的指针部分 *p与p区别如下:1、作用不同 p表示此指针指向的内存地址中存放的内容。p是一个指针变量的名字,表示此指针变量指向的内存地址。2、输出内容的格式不同 p常用在一个和指针类型一致的变量或者常量。p输出一个指针的地址,通常是输出一个16进制的数。3、效果不同 p是让编译器从指定的...
答案:B p = &a ;p指向a的存储空间 a= *p + b; *p此时a的存储数值为10,即a = 11。
先上结论:对于int a[5],*p;p=a; 或p=&a[0]是正确的 p=&a严格来说是错误的 首先要搞清楚a与&a的区别:a表示数组首元素的首地址,即元素a[0]的地址;&a表示整个数组的地址。二者的值是相同的,但意义并不一样。正如成都市政府与四川省政府的地址都在成都,但二者表示的含义不同。如下...
&是取地址,scanf读取变量的时候,参数需要的是变量的实际内存地址,了解C语言指针的概念后就会明白,地址就是指针,指向变量的数据内容。不过一般%s是不会用&取地址的,因为字符串类型本身就是指针,不需要再进一步取地址。
这是C语言里的一段代码,其中p是一个整数int类型的指针,a应该是一个整数,然后把整数a的值赋值给指针p。指针p的地址是另外一个整数,指针的地址和里面存放的数值是两个不同的概念哦,好好学习C语言吧!
c语言指针赋值要理解清楚,首先对p定义为指针即*p,然而p就是一个指针,a是一个值,int*p=a的意思就是p指针取a为其值,也就是a赋值给p指针,而你说的*p=&a是错误的,右边是取地址a,左边是p指针取值,这样写相当于p=a,是错误的,指针和赋值就冲突了,变量不一样。说白了*这个符号就是取...
a是一个数组名 本身确实是一个指针, 同时a[1]就是表示偏移量为一的变量, 即为一个int类型的变量 &a[1] 是取这个a[1]的地址 也就是它是一个指针。p = int *p = 指针 当然不一样 前面一个是把a[1]的值赋给*p,也就是说把 p指向的是a【1】的地址 后面一个是把a[1]的...
include<stdio.h>#include<ctype.h>#include<string.h>void main(){ char a[100],*p,y;int x,i,num;gets(a);p=a;x=strlen(a);//不知道你中间这一段有啥用 我全删了for(i=0;i<x;i++)if(*(p+i)>=65&&*(p+i)<=90)printf("%c",*(p+i));}FONTNAME and FONTAMELFONT...
对于第二个代码片段, int* a[] = { x,y,z }; 和 printf("%d\n", (a + 1)); 同样,int a[] 是定义了一个整型指针数组,而不是整型指针,*(a + 1) 是一个整型数组的地址,而不是整型数,所以会产生乱码。如果你想打印出数组中的值,可以使用下标访问,如 printf("%d\n",a[1...
在C语言中,int **pp,*p,a=10,b=20; 这行代码声明了一个指向整型指针的指针变量pp,一个指向整型的指针变量p,以及两个整型变量a和b,其中a初始化为10,b初始化为20。接下来的代码行是pp=&p。这里将指针p的地址赋值给了指针的指针pp,意味着pp现在指向p这个指针。紧接着是p=&a,这行代码...