循环赋值, 或者直接strcpy。 因为这里是字符串。
比如
#include<stdio.h>
int main()
{
int i=0
char a[100]
scanf("%s",a)
fun(&a)
return 0
}
int fun(int *p)
{
int i,b,c,d
char j[100]
strcpy(j, p)
用memcpy也可以。
memcpy(j, p, sizeof(j))
我想在这之后 让j【100】接收到上面那个数组的值 并输出我应该怎么写用指针!
return 0
}
2. C语言 怎么把指针的值 赋给另一个数组
循环赋值, 或者直接strcpy。
因为这里是字符串。 比如 #include int main(){int i=0char a[100]scanf("%s",a)fun(&a)return 0}int fun(int *p){int i,b,c,dchar j[100]strcpy(j, p);用memcpy也可以。
memcpy(j, p, sizeof(j));我想在这之后 让j【100】接收到上面那个数组的值 并输出我应该怎么写用指针!return 0}。
3. C++如何将一个指针的值赋值给另一个指针,并且两个指针不共用一个
首先指针全名叫
所以他本身是变量,既然是变量就要有值,而他的值就是指针指向的地址(在32位系统下是一个无符号的32位整数),
所以可以这么说任何两个指针都不共用一个地址,但是可以指向同一个地址!
像这样
int nNum = 10
int* p1 = &nNum
int* p2 = &nNum
p1和p2指向的地址相同,但是p1和p2的地址却是不同的
如果我理解的没错的话你想说的是两个指针指向同一个地址,但是这是不可能的!
既然是指针值赋值给另一个指针,那么一定是指向同一地址的,
算了,看到*c=*d;的写法我哭了!
指针变量赋值给指针变量是可以的。
我想补充楼上的
1、就是这两个指针变量同时指向一个地方
内存
2、指向指针的指针的指针是二级指针。它指向指针。
到看你怎么用了
指针的赋值int
*p
int
a
int
b[1]
p
=
&a
p
=
b
指针的赋值,“=”的左操作数可以是*p,也可以是p。
当“=”的左操作数是*p时,改变的是p所指向的地址存放的数据;
当“=”的左操作数是p时,改变的是p所指向的地址。
数组的变量名b表示该数组的首地址,因此p=b;也是正确的.
同类型的指针赋值:
int
val1
=
18,val2
=
19
int
*p1,*p2
p1
=
&val1
p2
=
&val2
p1
=
p2
//注意啦,p1指向了val2,而没有指向val1