c语言:当指针成为参数后
时间:2019-11-27
本文章向大家介绍c语言:当指针成为参数后,主要包括c语言:当指针成为参数后使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
指针就是一种指向内存地址的变量,利用它的一些特性我们可以完成很多工作
- 两个数字从小到大排序(引申的业务场景,对企业大佬的银行存款金额进行排序,这当然通过交换变量对应的数值来实现,否则盖茨大爷的钱可能全交换到我的账户下来,靠谱的做法是声明(或者说引入)指针变量,用来按照从小到大的顺序标的(指向)不同账户下的金额)
#include<stdio.h> #include<stdlib.h> void main() { double *pa, *pb,*tmp; double a, b; printf("请输入两个数,排列其大小\n"); printf("输入金额1"); scanf_s("%lf",&a); printf("输入金额2"); scanf_s("%lf",&b); pa = &a; pb = &b; if (*pb < *pa) { tmp = pa; pa = pb; pb = tmp; } printf("从小到大顺序%f,%f",*pa,*pb); system("pause"); }
- 指针作为参数
#include<stdio.h> #include<stdlib.h> void arrayasparam(int a[10]) { printf("\n数组作为参数的大小%d", sizeof(a[10])); //输出的值为4,这可以算是以形式参数传值的一个特例:a[10]实际上是a这个数组首元素的地址,指针变量长度为4,无论他是整型数组指针还是浮点亦或是字符数组 for (int i = 0; i < 10; i++) { a[i] = 9 - i; printf("元素逆序之:%d\n",a[i]); } } void fakeparam(int mynum) { mynum = 10; } void needleparam(int *mynum) { *mynum = 10; } void main() { int num[10] = {0,1,2,3,4,5,6,7,8,9}; printf("num数组的长度是%d\n",sizeof(num)); arrayasparam(num); int a = 66; fakeparam(a); printf("a的值是%d\n", a); needleparam(&a); printf("a的值是%d\n", a);//这个厉害,按照地址按图索骥完成了值的修改 system("pause"); }
原文地址:https://www.cnblogs.com/saintdingspage/p/11941591.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- PHP 静态属性和静态方法
- 通过 Trait 水平扩展 PHP 类功能
- 通过对象组合水平扩展 PHP 类功能
- DO,DTO,VO,POJO 你知道吗?
- Python 爬虫进阶必备 | AES-CBC 的 Pyhon 实现要怎么写?给代码就完事了
- Babel:下一代Javascript语法编译器
- 如何定位及优化SQL语句的性能问题
- Java线程安全如何进行原子操作,一致性的最佳实践
- 冒泡排序
- 现有CDP-DC集群启用Auto-TLS
- 打卡001/这是一篇软文
- 技术角 | 在CentOS 8上使用Elastic Stack: Elasticsearch/Kibana 7.8部署与认证配置
- 技术角 | 解决ES SQL命令行启动报错 ./x-pack-env: No such file or directory
- Linux常用命令归类总结
- 潜藏在PHP安全的边缘——浅谈PHP反序列化漏洞