这个问题是昨晚上有同学在知识星球提问,但是因为前两天一直在出差,比较累,没认真回答,今天打球回来,就把这个事情解决了。

我想说的已经在题目说明的很清楚了,C语言是没有引用的,引用是在C 里面才存在的神级操作。

所以,什么是引用呢?

说白了引用&就是给已经存在的某个变量新建了一个名字,如果程序对引用别名做了某些操作,其实就是对原目标的改动。

C 引用实例

#include
#includevoid exchange(int &x, int &y)
{int t;t = x;x = y;y = t;
}
int main()
{int a, b;scanf("%d %d", &a, &b);exchange(a, b);printf("%d %d\n",a,b);getchar();return 0;
}

程序输出

12 34
34 12--------------------------------
Process exited after 3.121 seconds with return value 0
请按任意键继续. . .

C语言有什么呢?

C语言是万变不离其宗的指针,引用在C 里面出现后,让编程变得非常友好,你看上面的操作,看起来就非常明了。

不过我们也可以使用指针来完成上面的操作

实例代码

#include
#includevoid exchange(int *x, int *y)
{int t;t = *x;*x = *y;*y = t;
}
int main()
{int a, b;scanf("%d %d", &a, &b);exchange(&a, &b);printf("%d %d\n",a,b);getchar();return 0;
}

程序输出

12 56
56 12--------------------------------
Process exited after 2.477 seconds with return value 0
请按任意键继续. . .

留一个讨论题目

讨论下下面的程序输出什么?评论说出你的答案

#include
#includevoid exchange(int *x, int *y)
{int *t = x;*x = *y;*y = *t;
}
int main()
{int a, b;scanf("%d %d", &a, &b);exchange(&a, &b);printf("%d %d\n",a,b);getchar();return 0;
}

声明:

本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜。

C语言没有引用,只有指针相关推荐

  1. 【C语言】引用和指针的区别?

    首先解释在C语言中,什么是引用:  1.引用概念 引用是别名,必须在声明的时候初始化.即:是指一个已定义变量的别名.(一个内存空间,有两个名字都可以操作) 引用:在函数调用时,是变量的别名,不可以单独 ...

  2. c语言 指针 a= amp b,c语言初学-引用和指针的异同点

    注:(const指针在这里代表的是指向变量的指针,常指针不考虑) 相同点:1.一个const引用可以引用一个非const变量 int a = 3; const int& b = a; 一个co ...

  3. 【C++ 语言】引用 ( 引用简介 | 指针常量 | 常量指针 | 常引用 | 引用参数 | 引用 指针 对比 )

    文章目录 I . 引用概念 II . 引用声明 III . 引用 地址 内存 分析 IV . 常引用 V . 引用作为参数 VI . 引用 与 指针 对比 I . 引用概念 C++ 对 C 扩充 : ...

  4. c语言实参形参函数调用指针引用 符号实例,C语言实参、形参、函数调用、指针、引用、符号实例.doc...

    C语言实参.形参.函数调用.指针.引用.符号实例 C语言实参.形参.函数调用.指针.引用.*&符号实例 实现环境:VC6 程序源代码: #include "stdio.h" ...

  5. c++语言中的引用与指针

    注:纯c语言不支持引用语法   一.引用与指针的对垒   1.引用的声明:int a=1;                              int &b=a;   //必须在声明时初 ...

  6. C语言——指针篇(三)数组的下标引用和指针访问

    前言:在上一篇文章中,笔者介绍了指针和数组的内存分配以及初始化,这篇文章来整理下关于数组访问的两种方式. 数组的下标引用和指针访问 在正式开始介绍多维指针和多维数组之前,笔者要先介绍一些关于数组下标引 ...

  7. 【C语言指针】 指针+-整数、指针-指针、解引用、指针数组、二级指针、结构体声明、初始化、传参

    目录 一.指针 1.指针是什么 1.1.一个单元1个字节 2.指针和指针类型 2.1.指针类型的意义 ① 解引用 ② + -整数 例:把每个整形里放1 每个字节里放1 总结: 3.野指针 3.1.野指 ...

  8. c语言的整型指针解引用与整型变量的区别

    (一)引入:简单介绍一下整型变量,指针,引用符和解引用符 定义一个整型变量a:    int a; 如果使用引用符号&,&a则是整型变量a的地址,也就是一个整型指针. 定义一个整型指针 ...

  9. c++引用与指针的区别

    ★ 相同点: 1. 都是地址的概念: 指针指向一块内存,它的内容是所指内存的地址:引用是某块内存的别名. ★ 区别: 1. 指针是一个实体,而引用仅是个别名: 2. 引用使用时无需解引用(*),指针需 ...

  10. [C++再学习系列] 引用和指针

    下面是网上关于引用和指针区别的常见答案: 引用和指针有如下三种区别: 1 引用必须在声明时初始化,而指针不用: 2 NULL不能引用,而指针可指向NULL: 3 引用一旦声明,引用的对象不能改变(但对 ...

最新文章

  1. 局部变量java6_java字节码-几种字符串局部变量用法的区别
  2. 【论文阅读】A Gentle Introduction to Graph Neural Networks [图神经网络入门](6)
  3. 修改GIT的user.name和user.email
  4. 【电设控制与图像训练题】【激光打靶】【openmv测试代码以及效果】
  5. cp 过程中目录突然挂了_怎么解决管材激光切割机切管过程中出现的过烧及挂渣...
  6. 计组之数据运算:10、IEEE754标准
  7. Linux Shell通过fifo实现多进程并发以及并发数控制
  8. Uber发布的CoordConv遭深度质疑,“翻译个坐标也需要训练?”
  9. Memory Networks
  10. 中国移动MM如何成就千亿梦想
  11. 安装MyEclipse10 并且破解(附带软件包)
  12. SuperMap矢量瓦片优化方案
  13. U盘插入计算机不显示图标,U盘插入电脑后不显示图标的应对措施
  14. linux 修改网卡 mac地址命令,Centos系统下查看和修改网卡Mac地址(附ifconfig命令格式)...
  15. 联想新计算机开机黑屏,联想笔记本电脑开机黑屏没反应的原因及解决办法攻略【维修总结】...
  16. Linux信号:SIGCHLD信号和僵尸进程
  17. 基于java的电子病历管理系统ssh框架
  18. windows meld的右键菜单的使用
  19. 陈岷愿做中华的守护者
  20. JavaScript一键换肤

热门文章

  1. jenkins部署java_在Window上使用Jenkins自动部署和上传快照Java工件
  2. JDK 11的一般可用性
  3. javafx中的tree_JavaFX中的塔防
  4. java 垃圾回收手动回收_Java垃圾回收(4)
  5. 工厂模式 构建者模式_实践中的构建者模式
  6. java正则表达式用法示例_Java正则表达式教程及示例
  7. 使用Java扫描DynamoDB项目
  8. 物联网项目:将Arduino连接到Ubidots和Android –第1部分
  9. 基于Rx-netty和Karyon2的云就绪微服务
  10. Elasticsearch-kopf导览