| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1008 人关注过本帖
标题:求解一 C++ 问题
只看楼主 加入收藏
黑色humor
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2014-8-10
结帖率:0
收藏
已结贴  问题点数:20 回复次数:13 
求解一 C++ 问题
#include <iostream>
using namespace std;
void main()
{
    void del_ch(char *,char);
    char str[80],ch;
    cout<<"Input a sting:\n";
    cin.getline(str,80,'\n');
    cout<<"Input the char deleted:\n";
    cin>>ch;
    del_ch(str,ch);
    cout<<"Then the new sting is \n";
    cout<<str<<endl;
}
void del_ch(char *p,char ch)
{
    char *q=p;
    for(;*p!='\0';p++)
        if(*p!=ch)
        {*q=*p;q++;}
    *q='\0';
}
为什么被调函数中最后不需要return语句,不然结果怎么出?
搜索更多相关主题的帖子: include 
2014-08-10 18:15
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:5 
void 不要求返回值

但主函数用void是不符合规范的 有些编译器上编译不过

至于结果怎么出 这里是用的指针
2014-08-10 19:29
黑色humor
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2014-8-10
收藏
得分:0 
回复 2 楼 zklhp
*p没有变化啊,str的值等于*p的值,不等于*q的值,那为什么还能正常出结果呢?
2014-08-11 17:59
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:5 
不太懂你在说什么   估计你的函数基本功还需要进一步增强

DO IT YOURSELF !
2014-08-12 15:34
丽娜13
Rank: 2
来 自:湖南
等 级:论坛游民
帖 子:21
专家分:18
注 册:2014-6-20
收藏
得分:5 
void 函数是不需要返回值的,指针首地址传入功能函数,指针里的数据就已经改变了,在主函数中直接使用指针数组就行了

我是一只小菜鸟呀小菜鸟,怎么飞也飞也飞不高T-T
2014-08-12 17:38
a874695162
Rank: 2
等 级:论坛游民
帖 子:37
专家分:15
注 册:2014-7-21
收藏
得分:5 
数组名实际上是指针,在调用函数时将该指针的值(数组首元素的地址)传递给形参,那么形参就是一个指向主函数中数组的指针,改变了它所指向数组的元素的值就是改变主函数中的数组。因此,被调函数不需要返回值。
你的代码循环处在逻辑方面是有问题的,不能达到删除特定字符的目的,我不告诉你怎么改,请自己思考,应该不难!
要是实在不懂,请加QQ874695162

加油,再加油!编程,再编程!
2014-08-12 20:05
拟双
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2014-9-9
收藏
得分:0 
2014-09-09 17:28
拟双
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2014-9-9
收藏
得分:0 
2014-09-09 17:28
richardw
Rank: 2
等 级:论坛游民
威 望:1
帖 子:12
专家分:14
注 册:2014-9-7
收藏
得分:0 
你的函数内部有赋值操作的,你把指针当作参数传入了函数内,就相当于告诉函数在哪个地方改,函数改了后,在函数外面看,也是改过的结果

就像你告诉了我你家的地址,我去给你家砸了大门(只是举例),不论是从街对面看还是从你家里面看,你的大门都坏掉了
2014-09-10 22:15
ODmini
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2014-8-27
收藏
得分:0 
看了你的问题 我感觉我还需要学习很多知识   
2014-09-12 22:44
快速回复:求解一 C++ 问题
数据加载中...
 
   



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

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