有指针变量p1,p2,p1="abc";p2="abc".strcat(p1,p2)如何理解strcat函数的参数只能是数组吧?正确的应该是strcat(*p1,*p2)吧?

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/06 19:29:44
有指针变量p1,p2,p1=

有指针变量p1,p2,p1="abc";p2="abc".strcat(p1,p2)如何理解strcat函数的参数只能是数组吧?正确的应该是strcat(*p1,*p2)吧?
有指针变量p1,p2,p1="abc";p2="abc".strcat(p1,p2)如何理解
strcat函数的参数只能是数组吧?正确的应该是strcat(*p1,*p2)吧?

有指针变量p1,p2,p1="abc";p2="abc".strcat(p1,p2)如何理解strcat函数的参数只能是数组吧?正确的应该是strcat(*p1,*p2)吧?
strcat的函数定义如下:
char *strcat(char *dest,char *src);
用法  #include //在C++中,则存在于头文件中.
功能  把src所指字符串添加到dest结尾处(覆盖dest结尾处的'\0')并添加'\0'.
说明  src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串.
返回 指向dest的指针.
-------------
由上可知,参数1和2都是char类型的指针,所以正确的调用方法是strcat(p1,p2)
但要注意“src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串.”

有指针变量p1,p2,p1=abc;p2=abc.strcat(p1,p2)如何理解strcat函数的参数只能是数组吧?正确的应该是strcat(*p1,*p2)吧? c=*p1*(*p2); 期中p1和p2是指针,c 是变量, p1指向某个整型变量,要使指针p2也指向同一变量,哪一个语句是正确的 .A.p2=*&p1; B.p2=**p1; C.p2=&p1指向某个整型变量,要使指针p2也指向同一变量,哪一个语句是正确的 .A.p2=*&p1; B.p2=**p1; C.p2=&p1; D.p2=* 程序 指针变量 int a=5 ,*p1=&a ,*p2;*p1=*p1+*p2 这里*p2是什么?是*p2本身的地址吗,*p2本身有没有地址?跟上面的问题无关 *p2=2if(*p1>*p2) 这样写正确,if(p1>p2) 这样写是不是一样? p1=p2; \p1 的指针指向 p2,意味着p2值改变,p1值也改变 p1=p2;\我想是p1指向改变了,即p1不再指向原变量的地址,改为指向p2所指向的地址.那为什么p2的值也会变呢?#include void swap(int *p1,int *p2){int *t;t=* int a=10,b=20,*p1,*p2; p1=&a; p2=&b; p1=p2; printf(%d,%d,*p1,*p2); 答案是20,20怎么算?我算的是10,10,不是应该是指针变量p2也指向指针变量p1所指向的变量么 假设定义了两个整型指针变量p1、p2,有如下语句p1 = new int[5];p2 = new int[10];在释放所申请的内存空间时,只需要delete [] p1和delete [] p2即可,并没有指明要归还多大的空间,请问delete是如何获知p1和p2 下面一段代码:int a=1,b=2,t; int *p1,*p2; p1=&a;p2=&b; t=*p1;*p1=*p2;*p2=t;我基本上能明白这是交换*p1和*p2的值,但书上讲解:交换*p1和*p2的值,就是交换a和b的值,即改变指针p1和p2所指向变量的值,而指针p1 设p1、p2是指向int型一维数组的指针变量,k为int型变量,一下错误的语句是?A.k=*p1+p2 B.p2=k C.p1=p2 D.k=p2-p1 (需要具体过程,B (不了解为什么D是对的) 其中A选项我漏打了,应该是 k=*p1+*p2 C语言,设p1和p2是指向同一个int型一维数组的指针变量,那么k=*p1*(*p2)是什么意思? 一道C语言题目,最好有解释,假定P1和P2是已赋值的字符指针,则假定P1和P2是已赋值的字符指针,则下述有关运算中,非法的是A.*P1=*P1+*P2B.*P1+=100-*p2C.P2=P1/2D.*P2=*P1-'A' c语言:两个指向字符串的指针,*p1,*p2,请问while(*p1++=*p2++)是什么意思? 指针变量如何间接访问另一个变量呢?我的间接访问变量:int a=5,b=10;int *p1,*p2;*p1=a;*p2=b;*p1=6;*p2=12;我这种间接访问变量的做法对吗?为什么?如何用指针变量间接访问另一个变量? 指针的逻辑运算例题 inta[5]={1,3,5,7,9},*p1=a,*p2=0;那么 p1,p2,为真,p2,p1&&p2 为假.请问此处p1,p2分别代表什么啊,还有为什么*p1=a是什么意思啊,不是p1=a是p1指向a[0]吗?他们有什么区别啊? 设p1和p2是指向同一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是 A k=*p1+*p2 B p2= 设p1和p2是指向同一个字符串的指针变量,c为字符变量,则以下不能正确执行的赋值语句是________.a)c=*p1+*p2; b)p2=c c)p1=p2 d)c=*p1*(*p2);原因啊原因~呜呜呜 既然(指针变量)*p=100是错的,那为什么*P1=*P2就可以呢?不是*P2是P2所指的内容吗? p2->next=p1;p2=p1;p1是链指针,以给定地址,p2也是链指针,但没给定地址