应届生求职招聘论坛

标题: 阿尔卡特的一个笔试题 [打印本页]

作者: zhui.bu    时间: 2008-8-20 15:57
标题: 阿尔卡特的一个笔试题

// ATest_cpp : Defines the entry point for the console application.

//参数传递问题

  1. include "stdafx.h"
  1. include <iostream>

using namespace std;

void fun(int a,int*b,int &c,int* &d)

{

 a++;

 (*b)++;

 b = new int(10);

 cout<<"aaaa "<<b<<endl;//地址

 cout<<"bbbb "<<*b<<endl;//5

 c++;

 d++;

 d = new int(5);

 cout<<"dddd "<<d<<endl;//地址

 cout<<"dddd2 "<<*d<<endl;//5

}

int main(int argc, char* argv[])

{

 int a=2,b=3,c=4,d=5;

 int* p = &d;

 fun(a,&b,c,p);

 cout<<a<<endl;//2 值传递

 cout<<b<<endl;//4 指针传递

 cout<<c<<endl;//5 引用传递

 cout<<d<<endl;//5 引用传递 指向指针的引用

 cout<<*p<<endl;//10 引用传递 int(5)为整型初始化

// printf("Hello World!\n");

 return 0;


作者: qianwang_tju    时间: 2008-10-23 10:13
谢谢楼主

作者: cazy9077    时间: 2008-10-23 12:20
分清楚 b = new int(10); 和 d = new int(5); 的区别 前者是在函数中试图改变实参 后者在函数中用引用的方式改变实参
作者: zhuguiqin    时间: 2008-10-23 14:46
能不能把题目再详细点啊,谢谢
作者: zhuguiqin    时间: 2008-10-23 14:49
现在找工作真的不容易!
作者: xiewenda    时间: 2008-10-23 18:23
8错!!!!!
作者: 启若    时间: 2008-10-23 20:24
谢谢分享~~~
作者: idoit0204    时间: 2008-10-24 15:39
原帖由 cazy9077 于 2008-10-23 12:20 发表 分清楚 b = new int(10); 和 d = new int(5); 的区别 前者是在函数中试图改变实参 后者在函数中用引用的方式改变实参



作者: 纪海杰    时间: 2008-10-24 16:59
zan zan zan
作者: hengheng88    时间: 2010-9-3 19:08
谢谢
作者: fqming    时间: 2010-9-8 16:58
谢谢!!
作者: zz8318    时间: 2010-10-14 12:28
ddddddddddddd
作者: 点水的蜻蜓    时间: 2010-10-14 13:58
回复 12# zz8318


    谢谢楼主啊。赶紧去抱抱佛脚去。。。




欢迎光临 应届生求职招聘论坛 (https://bbs.yingjiesheng.com/) Powered by Discuz! X3.2