首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

这小程序错哪了呢

2012-03-14 
这小程序哪里错了呢?#includestdio.hvoidcopy_string(char*from,char*to){for(*from! \0 from++,to++

这小程序哪里错了呢?
#include   <stdio.h>

void   copy_string(char   *from,char   *to)
{
for(;*from!= '\0 ';from++,to++)
{
    *to=*from;
}
*to= '\0 ';
{

}
}

void   main()
{
char   *a= "I   am   a   teacher.   ";
char   *b= "you   are   a   student. ";
printf( "string   a=%s\nstring   b=%s\n ",a,b);
copy_string(a,b);
printf( "string   a=%s\nstring   b=%s\n ",a,b);
}

以我的智商加上浅陋的功底是在找不出错误了...

高人指点..谢

compiled   under   VC6.0


[解决办法]
char *a= "I am a teacher. ";
char *b= "you are a student. ";

指针a,b的内容不允许修改

用字符数组。
[解决办法]
char *a= "I am a teacher. ";
------
表示指针a指向常量区(内容为 "I am a teacher. ")地址
这块内存是不能修改的

可以这样:char a[80]={ "I am a teacher. "};

[解决办法]
#include <stdio.h>

void copy_string(char *from,char *to)
{
for(;*from!= '\0 ';from++,to++)
{
*to=*from;
}
*to= '\0 ';
{

}
}

void main()
{
//char *a= "I am a teacher. ";通常常量串不允许更改
char a[100]= "I am a teacher. ";
//char *b= "you are a student. ";
char b[100]= "you are a student. ";
printf( "string a=%s\nstring b=%s\n ",a,b);
copy_string(a,b);
printf( "string a=%s\nstring b=%s\n ",a,b);
}

热点排行