copy
#include <stdio.h>
void copy_string(char *from,char *to)
{
while(*from!='\0')
{
*to++ =*from++;
}
*to = '\0';
}
void main()
{
char *a = "I am a student";
char *b = "I anm jjgkghh jiktr";
printf("\nstring = %s\nstring = %s\n",a,b);
copy_string(a,b);
printf("\nstring = %s\nstring = %s\n",a,b);
}
错在哪?
[解决办法]
char *a = new char[100];
char* b = new char[100];
strcpy(a,"i am a student");
strcpy(b,"i am jjgkghh..l...");
否则
按你的做法指向的是一个常量。。
[解决办法]
又是这个问题,
char *a = "I am a student";
char *b = "I anm jjgkghh jiktr";
改为这样试下:
char a[]="I am a student";
char b[]= "I anm jjgkghh jiktr";
[解决办法]
常量字符串无法修改的。
你需要在栈上申请内存
[解决办法]
char*a = "xxx";
这样a指向的只是一个常量,就是const,不允许改变的,所以会出错。
给一个常量赋值,就会出错。。
[解决办法]