Linux C基础笔记(3)

补充申明:Linux C基础笔记共分为四部分,第一部分是Linux下基本命令,以及vi编辑器的使用还有C中的数据类型,第二部分为运算符、常量变量和输入输出。第三部分是控制语句、数组、字符串函数。第四部分为指针、函数以及分配内存管理。在写完这四部分之后我会继续上传数据结构、IO、以及网络编程的学习笔记,大家如果有需要学习Linux下编程的可以关注一下,我会将我所有的学习笔记发布在此供大家一起学习。(在笔记里面会有一些其他博主的总结,如果涉及到实属抱歉,您可以通过邮箱联系我,我会及时修改。1509965601@qq.com)。

【0】控制语句

分支语句和循环语句分支语句if...else...(1)简化形式if(表达式){语句块1}else{语句块2}(2)阶梯形式if(表达式1){语句块1}else if(表达式2){语句块2}....else{语句块n}(3)嵌套形式if(表达式1){语句块1}else if(表达式2){if(...){...}else if(...){...}else {...}}....else{语句块n}备注:多个if与多个else if详解:if与多个else if是分枝情况。只执行其中一条代码,if与多个if是并列情况,会顺序执行如果是多个else if的话,只要第一个if条件成立,即使满足else if的条件也不会执行else if及else的内容switch语句switch (表达式){  case 常量表达式1:语句块1;break;case 常量表达式2:语句块2; break;…case 常量表达式n:语句块n; break;default   :语句块n+1}注意:switch中的表达式可以是整型或字符型表达式(也可以是枚举类型,新标准的c语言允许为任意类型.)每个常量表达式的值必须各不相同,否则将会出现矛盾。当表达式的值与case后面的常量表达式值相等时就执行此case后面的语句。“case 常量:”只起语句标号的作用。break语句在switch中的作用:强行跳出switch体转到其它某条语句,每个case后面应有一个break语句(否则程序的执行顺序将改变),default分支后的break可以省略。各个case出现的先后顺序不影响程序的执行结果.多个case可以执行一组语句.

【1】控制语句之循环语句
注意:所有的循环语句都需要一个结束标志,如果没有,会是一个死循环

1.goto循环(一般不介意使用,除非是在内核开发中使用)本质实现的是一个跳转功能,在一个函数体内部执行跳转next:....goto next;2.while循环先判断,后执行while(表达式){语句块}3.do...while循环先执行后判断do{语句块}while(表达式);4.for循环for(表达式1;表达式2;表达式3){语句块}执行过程:先执行表达式1,在执行表达式2,如果表达式2成立,则执行语句块,再执行表达式3,执行表达式2,如果成立,再执行语句块表达式1:一般为对变量进行初始化表达式2:一般是一个判断条件,如果不成立,则结束整个for循环表达式3:一般是循环语句的结束标志,如果表达式2为假,从而结束整个循环……

【2】数组

1.一维数组声明数组  type arrayName [ arraySize ];    double balance[10];初始化数组 double balance[5] = {1000.0, 2.0, 3.4, 7.0, 50.0};double balance[] = {1000.0, 2.0, 3.4, 7.0, 50.0};冒泡排序:  for(i = 0;i<n-1;i++) {for(j = 0;j<n-1-i;j++){if(a[j]>a[j+1]) {temp = a[j];a[j] = a[j+1];a[j+1] = temp;    }}}简单快速排序法每次拿前一个数据与后面的所有的数据进行比较,将最小的数据放在前一个位置,以此类推2.二维数组声明数组 type arrayName [ x ][ y ];初始化  int a[3][4] = {  {0, 1, 2, 3} ,   /*  初始化索引号为 0 的行 */{4, 5, 6, 7} ,   /*  初始化索引号为 1 的行 */{8, 9, 10, 11}   /*  初始化索引号为 2 的行 */};int a[3][4] = {0,1,2,3,4,5,6,7,8,9,10,11};备注:行可以省略,列不可以省。

【3】字符串函数

#include <string.h>size_t strlen(const char *s);功能:计算一个字符串的长度参数: s:指定的字符串的首地址返回值:字符串的长度#include <string.h>char *strcpy(char *dest, const char *src);功能:将src的数据赋值给dest,包括src的\0也会一起复制参数:dest:目的字符串的首地址src:源的字符串的首地址返回值:与dest的值一样
注意:必须保证dest足够大,否则会内存溢出#include <string.h>char *strcat(char *dest, const char *src);功能:拼接两个字符串,将src的数据追加到dest的后面,从destz\0的位置开始追加参数:dest:目的字符串的首地址src:源的字符串的首地址返回值:与dest的值一样
注意:必须保证dest足够大,否则会内存溢出#include <string.h>int strcmp(const char *s1, const char *s2);功能:比较两个字符串的内容参数:  s1,s2:要比较字符串返回值:>0 s1 > s2=0 s1 = s2<0 s1 < s2int strncmp(const char *s1, const char *s2, size_t n);功能:比较字符串前n个字符是否相等参数:s1:第一个字符串,s2:第二个字符串,n 前n个字符

4【<string.h>】

size_t strlen(const char *s)                      求字符串长度char *strcpy(char *dst, const char *src);         字符串复制char *strcat(char *dse, const char *src);         字符串链接int strcmp(const char *str1, const char *str2);   字符串比较char *strchr(char *str,char c);                   查找字符c第一次出现的位置char ^strstr(const char *str1,const char *str2);  查找子串h

Linux C基础笔记(3)相关推荐

  1. Linux C基础笔记(4)终结篇

    Linux C基础笔记(4)终结篇 补充申明:Linux C基础笔记共分为四部分,第一部分是Linux下基本命令,以及vi编辑器的使用还有C中的数据类型,第二部分为运算符.常量变量和输入输出.第三部分 ...

  2. Linux C基础笔记(2)

    Linux C基础笔记(2) **补充申明:Linux C基础笔记共分为四部分,第一部分是Linux下基本命令,以及vi编辑器的使用还有C中的数据类型,第二部分为运算符.常量变量和输入输出.第三部分是 ...

  3. Linux C基础笔记(1)

    Linux C基础笔记(1) [1]四个重要的人物 肯.汤姆森:B语言发明者,C语言发明者,UNIX发明者,AT&T 丹尼斯.里奇:C语言之父,UNIX 之父 理查德.斯托曼:自由软件之父,l ...

  4. 萌新linux的基础笔记

    笔记下载 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 命令 vim vim命令 前言 一个萌新写的linux的基础笔记 命令 ls //查看当前目录文件夹与文件 ...

  5. Linux:基础笔记

    Linux:基础详细版 Linux基础知识: 文件信息: Linux是一个以根目录为核心,多个子目录和软链接组成的操作系统 linux中不同类型文件的颜色: 白色:普通文件 蓝色:目录 绿色:可执行文 ...

  6. linux驱动内核,Linux内核设备驱动之Linux内核基础笔记整理

    1. Linux内核驱动模块机制 静态加载, 把驱动模块编进内核, 在内核启动时加载 动态加载, 把驱动模块编为ko, 在内核启动后,需要用时加载 2. 编写内核驱动 #include #includ ...

  7. Linux文件目录基础笔记

    1.进入目录名称:cd cd命令主要是方便用户切换到不同目录的指令. 比如:cd #只执行cd命令默认进入root的根目录 cd /home #进入home目录,如果home目录有testdir目录的 ...

  8. 2.linux系统基础笔记(延时操作、实时系统中的定时器、事件)

    延时操作 延时操作是操作系统中经常遇到的一种情形.延时的原因很多,有的时候是为了等待外设芯片处理结束,有的时候是为了暂时释放cpu的使用权,有的就是为了希望在一段时间获取资源,如果没法在单位时间内获取 ...

  9. 1.linux系统基础笔记(互斥量、信号量)

    操作系统是很多人每天必须打交道的东西,因为在你打开电脑的一刹那,随着bios自检结束,你的windows系统已经开始运行了.如果问大家操作系统是什么?可能有的人会说操作系统就是windows,就是那些 ...

最新文章

  1. mysql2012用户名_mysql2012 代码怎么用
  2. 安全测试的目的,发现哪些问题
  3. PHP学习:字符串操作和正则表达式
  4. NOIP模拟测试30「return·one·magic」
  5. Python 第三方库之 Celery 分布式任务队列
  6. 【汇总】C#数据类型及转换
  7. ibm服务器安装系统后黑屏,i52430m装win10系统重启电脑进入会黑屏修复方法
  8. mysql union 不同字段_mysql中union和union all的区别和注意点
  9. 聚簇索引和非聚簇索引的原理
  10. CENTOS取消锁屏功能
  11. 网络通信协议基础(ISIS)——入门
  12. json数据循环左侧三级导航菜单
  13. win7计算机事件查看器,win7事件查看器是什么,事件查看器概述
  14. 【R语言】GARCH模型的应用
  15. ok6410linux usb驱动,linux OK6410 LED驱动
  16. 写作技巧~100段作文排比句(81-100段),考试一定用得上,赶紧收藏!
  17. 高并发系统设计——API网关技术选型
  18. Pyside2 Qlabel如何快速添加click鼠标单击事件(新手上路,勿喷!)
  19. Web 自动化神器 TestCafe(二)—元素定位篇
  20. linux docker启动指定字符集,【字符集】解决docker 容器中中文乱码问题

热门文章

  1. 系统增删查改的软件测试,软件测试人员必掌握的增删改查之简单查询
  2. java中的getnumber怎么用_java安全编码指南之:Number操作
  3. ftp服务器web里有个文件,web实现ftp服务器文件
  4. java 装饰者_java装饰者模式怎么用?
  5. java质数和合数的程序_《java项目实训》课程设计计算器.doc
  6. mybatis的mapper.java_mybatis笔记之使用Mapper接口注解
  7. python弱类型好处_JavaScript弱类型语言的优缺点有哪些
  8. short类型占16位,可以赋给short类型的最大值32767,最小值为-32768
  9. servlet ---- servlet入门
  10. ftp ---- vsftpd安装卸载