C语言指针,int a=1; int *p; 其中p=&a和*p=&a有什么区别?p的值是否相同?
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/11 01:34:28
C语言指针,int a=1; int *p; 其中p=&a和*p=&a有什么区别?p的值是否相同?
指针本质就是存储内存地址的一个变量.所以指针可以指向某个变量在内存中存储的单元格嘛.变量去访问单元格最后也是编译器通过变量名和地址一一对应去查找的.而指针里面直接存储的就是地址,所以直接可以访问地址所对应的单元格.
不知道楼主说的是说明情况.所以几种可能的都说一下:
测试代码
#include "stdio.h"
#include "conio.h"
main()
{
int a=1;
int *p=&a;
int *q,*r;
q=&a;
*r=&a;
printf("p=%d,q=%d,r=%d",p,q,r);
getch();
}
int *p=&a ; 这是很标准的,把a的地址个p指针变量.
int *q;q=&a;这也是很标准的.定义一个指针变量,然后将a的地址赋值给她.
int *r; *r=&a; 首先r是个指针变量,但是r指向内存中那个单元格呢?r没有赋初值就开始用了.这是很严重的.r是个游离态的指针.*r表示取出r对应的那个地址中的值.r都没有指向一个具体的单元格,如何去取值啊.
不知道楼主说的是说明情况.所以几种可能的都说一下:
测试代码
#include "stdio.h"
#include "conio.h"
main()
{
int a=1;
int *p=&a;
int *q,*r;
q=&a;
*r=&a;
printf("p=%d,q=%d,r=%d",p,q,r);
getch();
}
int *p=&a ; 这是很标准的,把a的地址个p指针变量.
int *q;q=&a;这也是很标准的.定义一个指针变量,然后将a的地址赋值给她.
int *r; *r=&a; 首先r是个指针变量,但是r指向内存中那个单元格呢?r没有赋初值就开始用了.这是很严重的.r是个游离态的指针.*r表示取出r对应的那个地址中的值.r都没有指向一个具体的单元格,如何去取值啊.
C语言指针,int a=1; int *p; 其中p=&a和*p=&a有什么区别?p的值是否相同?
来高手!求解! C语言中,指针 定义int a,*p=&a;中的*p=&a 和表达式中的 p=&a; 有什么区别? 是不
定义指针int *p p=a,p=&a,*p=a,*p=&a,这四个的区别!
Int a=1; Int *p; p=&a; printf(“%d\n”,*p); 和Int a=1; Int*p; *
C语言……….若有定义语句:int a[4]={1,3,5,7},*p;p=a;则*(p+1)的值是
以下能使指针变量p指向变量a的正确选项是?A.int a,*p=a; B.int a,p=a; C.int a,*p=*
在C语言中,int *p; int a = 100; p = &a;//这句语句的意思是什么
c语言中,定义一个指针 int*p.假定刚开始时候p所指向的地址相同.则指针p++和*(p++)的意义是否相同?
C语言,*p;*p=&a;*p; p=&a;这两者有什么区别?
int a [4][10] ,*p; p=a;这句话为什么错了啊?int a[9],*p; p=a;和上面的区别?
c语言int a[ ]=(1,2,3,4,5,6) *P=a,什么意思,*P=1?
int *p,a[10]; for(p=a;p