标题:关于形参永字符指针变量不知道怎么编译出错了,求大神看一下
只看楼主
lhzxc
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-10-5
结帖率:0
已结贴  问题点数:20 回复次数:3 
关于形参永字符指针变量不知道怎么编译出错了,求大神看一下
#include <stdio.h>
void main()
{
    void copy_string(char from[],char to[]);
    char from[]="I am a teacher.";
        char to[]="You are a student.";
        char *a=from,*b=to;
        printf("string a=%s\nstring b=%s\n",a,b);
        printf("copy string a to string b:\n");
        copy_string(a,b);
        printf("string a=%s\nstring b=%s\n",a,b);
}
void copy_string(char *from,char *to)
{
    for(;*from!='\0';from++,to++)
        *to=*from;
    *to='\0';

}
搜索更多相关主题的帖子: teacher include 
2015-10-21 10:08
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:20 
“不知道怎麽編譯出錯了”,你不知道把出錯的編譯信息貼出來啊?不知道需要貼出來啊???

授人以渔,不授人以鱼。
2015-10-21 10:11
lhzxc
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-10-5
得分:0 
-------------------Configuration: cb - Win32 Debug--------------------
Linking...
test-27.obj : error LNK2001: unresolved external symbol "void __cdecl copy_string(char * const,char * const)" (?copy_string@@YAXQAD0@Z)
Debug/cb.exe : fatal error LNK1120: 1 unresolved externals
初学,不懂这些
2015-10-21 10:22
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
你調用的copy_string(a,b)形式跟定義的copy_string()函數是不一樣的。這是C++重載語法,它找到兩個參數爲const指針的函數版本,你定義的那個函數,參數不是const指針。實際上,這個問題是你初始化from[]、to[]之後再用另外指針指向它們造成的,那兩個指針a、b被編譯爲const char*指針了。

授人以渔,不授人以鱼。
2015-10-21 10:36



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-458384-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.562086 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved