标题:我写了一个程序,大家帮我看看哪里有问题
只看楼主
wuzihao
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-11-1
 问题点数:0 回复次数:7 
我写了一个程序,大家帮我看看哪里有问题
// test5.4.cpp : demonstrates passing by value

#include "stdafx.h"
#include "iostream"

using namespace std;
void swap(int x, int y);

int main()
{
    int x = 5,y = 10;

    cout <<"Main.Before swap, x: "<< x <<" y: "<< y << endl;
    swap(x,y);
    cout <<"Main.After swap, x: "<< x <<" y: "<< y << endl;
    return 0;
}

void swap(int x, int y)
{
    int temp;

    cout <<"Swap.Before swap,x: "<< x <<" y: "<< y << endl;

    temp = x;
    x = y;
    y = temp;

    cout <<"Swap.After swap,x: "<< x <<" y: "<< y << endl;
}
搜索更多相关主题的帖子: passing include return 
2008-06-04 11:36
zzy840208
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2008-4-16
得分:0 
包含的头文件有问题
#include "stdafx.h" 不需要用这个;
#include "iostream" 改为#include<iostream> 因为这是库里面的,而不是你自己定义的.
2008-06-04 12:21
sjz_zdf
Rank: 2
等 级:论坛游民
帖 子:63
专家分:14
注 册:2008-6-22
得分:0 
交换值能实现吗?swap()函数中的形式参数用引用比较好吧,呵呵~~~
2008-06-22 18:52
kongwei254
Rank: 1
等 级:等待验证会员
帖 子:38
专家分:0
注 册:2008-5-18
得分:0 
什么问题都没有
如果不能运行可能是编译器有问题
2008-06-23 17:24
守鹤
Rank: 4
来 自:山東臨沂
等 级:贵宾
威 望:12
帖 子:337
专家分:0
注 册:2008-6-20
得分:0 
这肯定不能交换数据啊
1.不需要#include "stdafx.h"
子函数改成一下就行了

void swap(int &x, int &y)
{
    int temp;

    cout <<"Swap.Before swap,x: "<< x <<" y: "<< y << endl;

    temp = x;
    x = y;
    y = temp;

    cout <<"Swap.After swap,x: "<< x <<" y: "<< y << endl;
}
2008-06-23 18:31
kongwei254
Rank: 1
等 级:等待验证会员
帖 子:38
专家分:0
注 册:2008-5-18
得分:0 
楼上的看清人家的意图好不好!!
2008-06-26 16:57
雪城白鸟
Rank: 1
来 自:吉林
等 级:新手上路
帖 子:22
专家分:0
注 册:2008-3-15
得分:0 
误区
你没有弄清楚什么是按值传递和按引用传递,再看下书
2008-06-26 18:52
ja860825
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2008-6-26
得分:0 
#include "iostream"

using namespace std;
void swap(int *, int *);

int main()
{
    int x = 5,y = 10;

    cout <<"Main.Before swap, x: "<< x <<" y: "<< y << endl;
    swap(&x,&y);
    cout <<"Main.After swap, x: "<< x <<" y: "<< y << endl;
    return 0;
}

void swap(int *x, int *y)
{
    int temp;

    cout <<"Swap.Before swap,x: "<< *x <<" y: "<< *y << endl;

    temp = *x;
    *x = *y;
    *y = temp;

    cout <<"Swap.After swap,x: "<< *x <<" y: "<< *y << endl;
}
2008-06-26 21:53



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




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

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