就是说两者是一样的,第二种比第一种少了一步?
追答没错,你换成别的类型试一下,也许更能明白,比如int型
以下两种方式一样:
一、
int a;
a=1;
二、
int a=1;
在c语言中,int *p,a; *p=&a,和p=&a有什么区别?
include <stdio.h> int main(){int *p,a=0xAA; \/\/声明 int指针变量 p 和 int变量a \/\/*p=&a;\/\/把指针p 指向的值 改变为 变量a的地址 ,是无效的\/\/ 因为a的地址长度为4字节,而指针p指向的值为int,即两字节的。 printf("程序运行前的值\\n");printf("p的地址 = 0x%X \\n指针...
c语言中*p=&a和p=&a有什么区别
c语言中*p=&a和p=&a只有一个区别就是指针初始化时间不同。p=&a:P是1维指针;p=&a:P是2维指针;p=&a示例:inta;int*p;a=5;p=&a;printf("valueis:%d.",*p);
这个c语言中 *p=&a 和 int*p p=&a 的区别
总得来说没区别,就是指针初始化的时间不同而已 int *p = &a;\/\/这里p声明的时候直接初始化它的值为变量a的地址 int *p;\/\/声明指针p,p的值不确定可能指向任何地址,p = &a;\/\/显示初始化使p指向a的地址
*p=&a,*p=a和p=&a各是什么意思,有什么区别?
1.一般来说*p=&a的表示方法是错的,*p=a和p=&a是正确的。2.*p=a的意思:将a的值赋给p指针指向的地址的值;3.p=&a的意思是:将a的地址赋给指针p;4.区别:*p是一个值;p是一个地址;两者完全不相同。5.*代表着p指向的地址的值,简单来说就是取值;&是取地址符号,取的是地址;p是...
c语言中,定义int型变量a指针*p,那么,*p=&a和p=&a是什么区别?
则指针p存的是一个int型变量的地址,即可以表达为:p = &a;p存的是int型变量的指,即p指针指向地址的内容,所以可*p = a; 当你用*p = &a时,编译器会认为指针的值表示了地址,编译报错。如果你真想这样表示,也可以,只需要将地址强转为int型,即 p = (int)&a;...
int *p=&a;和 int *p; *p=a;和 int *p; p=&a;有区别么?
当然是d正确 int *p=&a; 与 int *p; p=&a;这两个是等价的 但是int *p; *p=a; 就不同了,只是把a的值赋给*p,并没有让p指向a的地址
*p=&a和*p=a的区别
int a = 3, *p = &a; 这行代码定义了一个整型变量a并初始化为3,同时定义了一个指向a的指针p,并将a的地址赋给了p。这是正确的定义并初始化指针的方法。总结:在C语言中,正确的指针赋值操作是将一个地址赋给指针,而不是将一个值赋给指针。同时,定义指针时应该明确指针将要指向的类型。
int *p=&a;与int a;int *p;p=&a有什么区别? 为什么一个是*p=&a,一个...
呵呵 ,前面int *p=&a 之前肯定先定义过变量a (int a)了 所以 定义整型指针变量p的时候直接把a的地址交给了p;后面也是这个意思 区别在于是不是定义p的同时就给p赋初值 懂不?
*p=&a和p=&a一样吗?
不一样,前者将a变量的地址赋给p指向的那个对象,一般没这样的写法。后者是把a的地址赋给p指针,等于让p指向a变量
C语言中,p=&a和*p=&a有什么区别
p=&a;是将a的地址赋值给*p,结果会是一个十六进制的数。第二个是让p指向a的地址空间。*p的傎和a相等。int a=2,*p;p=&a;打印*P应该是一个地址值,很长一串,p=&a;打*P印结果会是2;