标题:输出字符乱码问题
取消只看楼主
heizhizhu007
Rank: 2
等 级:论坛游民
帖 子:50
专家分:10
注 册:2016-2-19
结帖率:92.31%
 问题点数:0 回复次数:1 
输出字符乱码问题


出现图片里的乱码 编译通过没错误  name :  应该显示 Lee  不过出现乱码  找不出原因   

#include <stdio.h>

struct Human
{
    char name[20];
    int age;
    int gender;
};
enum {MALE, FEMALE};

struct Human Create_Human(char *name, int age, int gender);

int Print_Human(struct Human *human);

char copy_str(char *str1,char *str2);


int main()
{
    struct Human Lee = Create_Human("Lee", 40, MALE);
    Print_Human(&Lee);
    return 0;
}

struct Human Create_Human(char *name, int age, int gender)
{
    struct Human human;
    human.age = age;
    human.gender = gender;

    copy_str(human.name, name);
    return human;
}


int Print_Human(struct Human *human)
{
    printf("Name : %s \n", human->name);
    printf("Age : %d \n", human->age);
    if(human->gender == MALE)
    {
        printf("Gender : Male \n");
    }
    else if    (human->gender == FEMALE)
    {
        printf("Gender : Female \n");
    }
    return 0;
}

char copy_str(char *str1,char *str2)
{
    while(*str2)
    {
        str2++;
        str1++;
    }
    *str1='\0';

    return 1;
}


[此贴子已经被作者于2016-3-9 20:38编辑过]

搜索更多相关主题的帖子: include return 图片 
2016-03-09 20:34
heizhizhu007
Rank: 2
等 级:论坛游民
帖 子:50
专家分:10
注 册:2016-2-19
得分:0 
问题已找出

char copy_str(char *str1,char *str2)
{
    while(*str2)
    {
        *str1=*str2;   /* 少了这个语句 */
        str2++;
        str1++;
    }
    *str1='\0';

    return 1;
}

[此贴子已经被作者于2016-3-9 20:51编辑过]

2016-03-09 20:45



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




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

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