C语言的学习日志1.2
一.指针的使用案例:
(1):函数中返回多个变量,例如:
#include<stdio.h>
void minmax(int a[], int len, int *max,int *min);
int main(void){int a[] ={1,2,3,4,5,6,7,8,9,10,14,16,17,21,23,66};int min,max;minmax(a,sizof(a)/sizof(a[0]),&min,&max);return 0;
}
void minmax(int a[], int len, int *min, int *max)
{int i;*min =*max =a[0];for(i=1;i<len;i++){if(a[i] <*min) *min = a[i];if(a[i] >*max) *max= a[i];}
}
(2)函数返回运算状态,结果通过指针返回,例如:
#include<stdio.h>
int divide(int a,int b,int *result);
int main(void)
{int a=5,b=2,c;if(divide(a,b,&c){printf("%d / %d = %d",a,b,c);}return 0;
}
int divide(int a,int b,int *result);
{int ret=1;if(b==0){ret=0;}else{*result=a/b;}return ret;
}
二.关于给指针加const
指针是const:表示一旦得到了某个变量的地址,不能在指向其他变量。
例如:int *const q=&i; q是const
所指是const:表示不能通过这个指针去修改那个变量(并不能是那个变量成为const)
例如:const int *p =&i; *p不能做赋值运算。
区分方式:判断const在*的前面还是后面,在前面则是所指是const,在后面就是指针为const。
Tips:const int a[]={1,2,3,4,5}表示的是const数组,数组本身是个const指针代表的是a这个数组不能指向其他数组,在外面再加一个const就代表的是里面的值也不能发生变化,所以这类数组只能通过初始化赋值。
C语言的学习日志1.2相关推荐
- C语言的学习日志2.19
链表: 链表是一种基础数据结构,采用动态分配储存单元的方式进行储存分配.结构体指针在这上面得到了充分的运用.换句话说,链表是一个功能极为强大的数组,他可以在节点中定义多种数据类型,还可以根据需要随意增 ...
- 0122 - EOS 编程学习日志(1)
EOS 编程到底是什么呢.学什么呢? 抱歉,我现在也不无法回答.不过,我可以告诉你我做了哪些尝试.目前的理解,以及下一步还要做什么. 首先,EOS 开发最重要的文档自然是在 GitHub: githu ...
- opencv生成日志_OpenCV-Utils学习日志:VideoCapture使用样例
1.VideoCapture可以打开多种来源的数据流,但常见的是相机.视频及图像序列三类数据流: (1)打开相机数据流,需要指定相机在主机上的设备编号,若主机上只有一个相机则编号通常是0. (2)打开 ...
- Unreal4引擎开发学习日志
Unreal4引擎开发学习笔记1 相关说明 本游戏引擎学习日志是笔者根据网上相关教学视频所写,是对视频内容的精炼与总结.如果您认为笔者所写不清晰明确,可以访问以下链接: Unreal入门第一季 - 虚 ...
- Go语言开发学习笔记(持续更新中)
Go语言开发学习笔记(持续更新中) 仅供自我学习 更好的文档请选择下方 https://studygolang.com/pkgdoc https://www.topgoer.com/go%E5%9F% ...
- Python学习日志12 - 办公自动化
Python学习日志 RBHGO的主页欢迎关注 温馨提示:创作不易,如有转载,注明出处,感谢配合~ 目录 文章目录 Python学习日志 目录 前言 进入正题 Python学习日志12课 - 办公自动 ...
- Python学习日志16 - 数据库SQL查询
Python学习日志 RBHGO的主页欢迎关注 温馨提示:创作不易,如有转载,注明出处,感谢配合~ 目录 文章目录 Python学习日志 目录 Python学习日志16课 - 数据库SQL查询 DQL ...
- 苏嵌学习日志03 07.13
学习日志 姓名:刘易中 日期:2018/07/13 今日学习任务 结构体.结构体和链表.内存管理.关键字union.enum.typedef等. 今日任务完成情况 (详细说明本 ...
- 学习日志 Day 5
学习日志 Day 5 //2020年3月23日21:32:18 磊子 操作系统 - 并发进程间制约关系 ①资源共享关系-间接制约 多个进程进程彼此无关,完全不知道或者只能间接感知其他进程的存在. 系统 ...
最新文章
- Module ‘celery‘ has no attribute ‘celery‘问题
- HTML/CSS——网页SVG ICON(小图标)解决方案
- loading动画_超干货 CSS3/SVG Loading动画集合
- 001.Linux开机启动过程
- 前端学习(3320):undefine和null 3
- 技术大佬:我去,你写的 switch 语句也太老土了吧!
- Windows Phone开发(37):动画之ColorAnimation 转:http://blog.csdn.net/tcjiaan/article/details/7526026...
- 关于指针初始化的问题 - 回复下雨天2
- Oracle 数据库实例介绍
- PackageInstaller 5.0源码分析静默安装与静默卸载
- 【coq】函数语言设计 笔记 06 -logic
- 站在两个世界的边缘——知无崖
- 行走在数据库上的行癫(一)
- 2020倒计时,大厂核心送给每一个脚踏实地努力着的Android程序员,逆风前行
- 《数据结构》实验指导书
- 使用node-ffmpeg将m4a转换为mp3
- html5画图程序,基于HTML5的Windows画图程序
- 初试Android原生弹窗
- freemarker基于docx格式创建模板导出带图片pdf文件
- Allegro/cadence中只有dra文件缺少psm解决方法
热门文章
- 猴子吃桃问题——C语言
- Oracle里date和sysdate,关于oracle中利用sysdate比较的方法
- OpenCV-迷宫解密
- 知乎x-zse-96最新参数破解
- A股-进阶-3分钟学会如何建立自己的股票交易系统
- 8. 数据库表的关联
- Revit获取安装路径,零依赖Revit提供的dll
- lol7月9日服务器维护,LOL7月9日停机维护到几点?LOL云顶之弈国服在哪进?
- MyBatisCodeHelperPro代码生成器的安装与使用
- java aes cfb 256_aes加密解密源码,包括aes128、aes192、aes256位,以及cbc、cfb、ecb、ofb、pcbc模式...