为了账号安全,请及时绑定邮箱和手机立即绑定
老师你为什么想打小萝卜头
建议已经明白区分的大家不要看评论,,,会更乱

最赞回答 / 时光_丿
c语言中,函数的参数传递是单向传递,相当于复制一份给子函数做参数,主函数中的变量并不会发生改变。&a, &b代表传递过来的是2个参数的地址,而自定义函数中,是将2个地址上的值进行交换,虽然这个子函数没有返回语句,主函数中a和b的值都没有变化,但是由于a和b指向的地址交换了,从而主函数中ab的值也就交换了,属于间接交换方式。形参时用*a、*b,代表形参是指针类型,引用时,只能引用指针类型或者其他类型的地址,所以这里在实参引用时,采用了&a、&b
感觉看评论也可以学到很多东西
不错,谢谢老师
#include <string.h>
#include <iostream>
using namespace std;
int main(void)
{
char *str = new char[100];
if(NULL==str)
{
return 0;
}
strcpy(str, "Hello imooc");
cout<<str<<endl;
delete[] str;
str=NULL;
return 0;
}
#include <iostream>
using namespace std;
int main(void)
{
int x = 3;
//定义引用,y是x的引用
int &y=x;
//打印x和y的值
cout<<x<<endl;
cout<<y<<endl;
//修改y的值
y = 10;
//再次打印x和y的值
cout<<x<<","<<y<<endl;
return 0;
}
那个学半年C语言的就想做出程序的有点想多了‘
还是弄不懂什么时候加*,什么时候不加*
申请内存是用来干什么
[Error] invalid conversion from 'const int*' to 'int*' [-fpermissive]
看不了,加载不出来
//const
#include <iostream>
using namespace std;
int main(void)
{
//定义常量count
const int count = 3;
const int *p = &count;
//打印count次字符串Hello C++
for(int i = 0; i < count; i++)
{
cout << "Hello imooc" << endl;
}
return 0;
}
#include <iostream>
using namespace std;
int main(void)
{
int x = 3;
//定义引用,y是x的引用
int &y=x;
//打印x和y的值
cout<<x<<endl;
cout<<y<<endl;
//修改y的值
y = 20;
//再次打印x和y的值
cout<<x<<","<<y<<endl;
return 0;
}

最新回答 / 低调_低调
*p=&x;代表这是以一个指针去接收x的地址;p=&x;是声明一个变量,变量里面存储的是x的地址
引用必须初始化
课程须知
本课程是C++初级课程 熟练掌握C语言开发语言基础语法
老师告诉你能学到什么?
1、C++语言引用的魅力 2、C++语言const的用法 3、C++语言函数默认值及函数重载 4、C++语言内存管理

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消