C++里如何用strcpy复制给字符串指针?
#include<iostream>#include<string.h>usingnamespacestd;voidmain(){char*p=newchar[6];ch...
#include<iostream>
#include<string.h>
using namespace std;
void main()
{
char *p=new char[6];
char a;
a="hallo";
strcpy(*p,a);
cout<<*p<<endl;
system("pause");
}
哪里出错了?帮帮忙呀!急! 展开
#include<string.h>
using namespace std;
void main()
{
char *p=new char[6];
char a;
a="hallo";
strcpy(*p,a);
cout<<*p<<endl;
system("pause");
}
哪里出错了?帮帮忙呀!急! 展开
2个回答
推荐于2017-11-26
展开全部
有3处错误
1、a="hallo"; a变量是一个字符,不是字符串,也不是字符指针,所以不能赋予字符串。
2、strcpy(*p,a); strcpy两个参数都为字符指针,传进去的应该是地址或字符串首地址。
3、cout<<*p<<endl; 这样输出的是字符串第一个字符,而不是整个字符串,输出字符串的正确方法是cout <<字符串首地址 <<endl;
正确代码:
#include <iostream>
using namespace std;
void main()
{
char *p=new char[6];
char *a="hallo"; //或 char a[] = "hallo";
strcpy(p,a);
cout<<p<<endl;
system("pause");
}
1、a="hallo"; a变量是一个字符,不是字符串,也不是字符指针,所以不能赋予字符串。
2、strcpy(*p,a); strcpy两个参数都为字符指针,传进去的应该是地址或字符串首地址。
3、cout<<*p<<endl; 这样输出的是字符串第一个字符,而不是整个字符串,输出字符串的正确方法是cout <<字符串首地址 <<endl;
正确代码:
#include <iostream>
using namespace std;
void main()
{
char *p=new char[6];
char *a="hallo"; //或 char a[] = "hallo";
strcpy(p,a);
cout<<p<<endl;
system("pause");
}
2013-12-16
展开全部
#include<iostream>
#include<string.h>
using namespace std;
void main()
{
char *p=new char[6];
char a[6]="hallo";
//a="hallo";
strcpy(p,a);
cout<<p<<endl;
system("pause");
}
#include<string.h>
using namespace std;
void main()
{
char *p=new char[6];
char a[6]="hallo";
//a="hallo";
strcpy(p,a);
cout<<p<<endl;
system("pause");
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |