标题:如何返回字符串?
只看楼主
ehszt
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:40
帖 子:1728
专家分:3216
注 册:2015-12-2
结帖率:100%
已结贴  问题点数:20 回复次数:3 
如何返回字符串?
提示return无法从char[]变为char,该怎么办?
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char del(char s[], int pos, int len)
{
    int i;
    for (i = pos + len - 1; i != '\0'; i++, pos++)
        s[pos - 1] = s[i];
    s[pos - 1] = '\0';
    return s;
}
void main()
{
    char s[100];
    int pos,len;
   
    printf("请输入字符串:");
        scanf_s("%s", s,100);
        getchar();
        printf("请输入要删除的位置:");
        scanf_s("%d", &pos);
        getchar();
        printf("请输入删除的长度:");
        scanf_s("%d", &len);
        getchar();
        del(s, pos, len);
        printf("新的字符串为:%s", s);
    system("pause");
}
搜索更多相关主题的帖子: include return 字符串 如何 
2016-07-06 17:42
grmmylbs
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:54
帖 子:1409
专家分:5845
注 册:2016-2-14
得分:0 
函数要定义成char *,char只是字符,不能表示字符串。

程序代码:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char* del(char s[], int pos, int len)
{
    int i;
    for (i = 0; s[i] != '\0'; i++)
        s[pos - 1 + i] = s[pos + len - 1 + i];
    return s;
}
void main()
{
    char s[100];
    int pos, len;

    printf("请输入字符串:");
    scanf_s("%s", s, 100);
    getchar();
    printf("请输入要删除的位置:");
    scanf_s("%d", &pos);
    getchar();
    printf("请输入删除的长度:");
    scanf_s("%d", &len);
    getchar();
    //del(s, pos, len);
    printf("新的字符串为:%s", del(s, pos, len));
    system("pause");
}
2016-07-06 18:05
ehszt
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:40
帖 子:1728
专家分:3216
注 册:2015-12-2
得分:0 
谢啦,for (i = 0; s[i] != '\0'; i++)
         s[pos - 1 + i] = s[pos + len - 1 + i];
你这个地方错了,不信你可以上机试试!
2016-07-06 18:23
低调低调
Rank: 3Rank: 3
来 自:四川省成都市
等 级:论坛游侠
威 望:1
帖 子:66
专家分:103
注 册:2016-6-23
得分:0 
这个将输入的字符串保存在数组中,然后将数组遍历输出就好了!
2016-07-06 18:40



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




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

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