C语言里包含以.c作为扩展名的文件,这种
文件叫源文件。C语言程序的绝大部分内容
应该记录在源文件里。
C语言里还包括以.h作为扩展名的文件,这种
文件叫头文件. C语言程序里可以直接使用数字和加减乘除
四则运算符号(*代表乘法,/代表除法) 所有计算步骤都必须用分号做结尾,每个用
分号结束的计算步骤叫做一条语句 C语言程序里的绝大多数语句应该包含在
大括号中间 C语言程序里可以用大括号代表函数
(函数可以看作一组语句) 每个函数有一个名字,不同函数的名字不能
相同 C语言程序里至少要包含一个叫做main的函数,
这个函数叫主函数
整个程序从主函数的第一条语句开始执行,当
主函数最后一条语句结束后整个程序结束 一个函数结束后可以用一个数字表示它的工作
结果,这个数字叫函数的返回值
主函数应该有返回值,如果返回值是0表示
程序希望计算机认为它正常结束了,如果
返回值不是0表示程序希望计算机认为它
出问题了。 C语言里预先保留了几十个英文单词,它们叫做
关键字
每个关键字有特定的用途,不能随意使用
所有关键字都是由小写字母构成的 return就是一个关键字,它有两个用途。
主要用途是结束函数的执行,辅助用途
是指定返回值的数值 计算机里根据不同数字在某个方面的区别把
数字分成几组,每组叫做一个数据类型
每个数据类型都有自己的名字
整数类型叫做int,它几乎包含所有不带小数点
的数字 程序里的所有数字必须有类型,没有类型的
数字计算机无法处理
程序里不带小数点的数字默认是整数类型的 如果函数有返回值就应该把返回值的类型名称
写在函数名称前面 C语言程序编码规范
.一行里最多包含一条语句
.同级别语句最左边一列应该上下对齐
.在合适的地方使用空格和空行 C语言程序里通常会包含预处理指令
预处理指令都以#做开头,不是以;做结尾
标准C阶段遇到的预处理指令都可以把写在
文件里的内容替换成其他内容
#include预处理指令可以把一个头文件的
内容包含到当前文件里
这个预处理指令中通常采用相对路径表示
被包含头文件的位置
如果把相对路径包含在<>中间就表示以系统
中预先规定好的一组目录依次作为起点
如果把路径包含在""中间就表示首先以当前
文件所在目录作为起点,然后再以系统中
预先规定好的一组目录依次作为起点 可以在C语言程序里加入各种文字性的说明
信息
这些文字性的说明信息必须加入到注释区域里
计算机会直接忽略注释区域里的内容
单行注释以//做开头,一直到行尾
多行注释以/*做开头,以*/做结尾 C语言里大量使用名称区分不同内容,
这些名称叫做标识符
尽量采用英文单词做标识符
标识符编写规则
.标识符的第一个字符可以是英文字母或下划线
.后面的每个字符可以是英文字母,下划线或
阿拉伯数字
.大小写不同的标识符是不同的标识符
(大小写敏感)
.关键字不能作为标识符使用
.标识符的长度没有限制,计算机只会截取
前面一部分使用
.标识符可以采用驼峰方式或下划线方式书写 编译器可以把源文件翻译成计算机能认识的格式
gcc是Linux系统里常用的C语言编译器
MinGW是Windows里的gcc Linux系统里开发C语言程序的基本步骤
.采用vi编写源文件和头文件
.使用gcc把所有文件翻译成计算机能认识的
格式(编译)
.使用./a.out做命令就可以执行程序 gcc编译器的工作步骤
.处理所有预处理指令
.把第一步的处理结果翻译成计算机能
认识的格式(编译)
.把第二步的结果合并成可以执行的文件(链接) gcc选项介绍
-E 只处理预处理指令
-c 只处理预处理指令并把结果翻译
成计算机认识的格式
处理结果是以.o作为扩展名的
目标文件
-o 用来决定最终执行文件的名称
-std=c89/-std=c99
用来决定采用什么版本进行编译
默认采用c89规范编译 C语言里提供一组标准函数,它们用来一些解决
常见的问题
不同标准函数的名称不同
可以在程序里编写函数调用语句使用标准函数 printf标准函数可以把程序里的数字显示在
终端窗口里
为了使用这个标准函数需要包含stdio.h头文件
可以使用占位符把双引号里面的数字转移到
双引号后面
双引号后面的数字可以是一个计算公式的结果,
计算机会先计算出结果然后替换掉双引号
里面的占位符
不同类型的数据应该和不同的占位符配合使用,
整数类型数字和%d占位符配合使用
可以在一条语句里使用多个占位符,占位符
的数量应该和双引号后面数字的数量一样 程序中使用的数字都记录在内存里
内存由大量的字节构成,每个字节可以记录
一个数字
每个字节有一个编号,这个编号叫做字节的
地址
不同字节的地址不同
所有地址从0开始向正数方向递增
字节地址有前后顺序,地址小的在前,地址
大的在后 可以把几个相邻的字节合并成一个整体用来
记录一个数字 可以把内存里用来记录一个数字的所有字节叫做
一个存储区
一个存储区只能记录一种类型的数字
存储区也有地址,存储区的地址就是它所包含
的字节里最前面那个字节的地址 C语言里变量可以用来代表存储区(对变量的
操作就是对它所代表存储区的操作)
变量必须首先声明然后才能使用,变量声明
语句可以用来声明变量
变量声明语句会让计算机为程序分配一个存储区
可以在一条变量声明语句里声明多个同类型
变量 赋值语句可以向变量代表的存储区里放一个数字
赋值语句里需要使用赋值操作符(=)
赋值操作符左边的内容必须可以代表存储区,
这种内容叫左值(变量就是一种左值)
赋值操作符右边的内容必须可以当作数字使用
赋值操作符可以把右边的数字放在左边的
存储区里 可以在声明变量的时候立刻对变量进行赋值,
这叫做变量的初始化
C语言里所有变量都应该初始化 可以直接在程序中把变量当作数字使用,这个
数字就是变量代表存储区里的数字 变量名称既可以代表存储区也可以代表存储区
里的数字,由环境决定 存储区的地址也可以代表存储区
在变量名称前使用符号&可以得到存储区的地址
可以使用%p作为占位符把地址数据显示在屏幕上 变量可以用来代表固定数字 可以用一个变量代表一组数字(不同的时候代表
不同的数字)

C语言开发框架、printf(day02)的更多相关文章

  1. C语言的printf输出格式控制

    C语言的printf输出格式控制 printf大家都耳熟能详,但是能真正将其用法弄透的估计很少见. 转一篇,改天整理. 1.转换说明符 %a(%A)     浮点数.十六进制数字和p-(P-)记数法( ...

  2. IOS学习笔记07---C语言函数-printf函数

    IOS学习笔记07---C语言函数-printf函数 0 7.C语言5-printf函数 ------------------------- ----------------------------- ...

  3. 关于C语言的printf输出问题

    前端面试的时候老总居然问这个问题,有点震惊…… #include <stdio.h> #include <stdlib.h> void main() { ; printf(&q ...

  4. 从C中变化过来的各种语言的printf输出格式

    在c.php和shell中经常可以碰到printf的使用,特别是在php中printf的相关变种有好几个:print.printf.sprintf.vprintf.vsprintf     在这些语言 ...

  5. 【C语言】printf函数详解

    C语言printf函数详解 一.相关基础知识 请求printf()打印变量的指令取决于变量的类型,例如打印整数用%d符号,打印字符用%c符号,这些符号称为转换说明(conversion specifi ...

  6. brew 的 调度工具DBGPRINTF 和 c语言的 printf

    在官方的文档中是这样备注DBGPRINTF Prototype void dbgprintf(const char *pszFormat,...); Description This function ...

  7. Go语言fmt.Printf使用指南(占位符总结)

    本文整理了Go语言的标准输出流(fmt.Printf)在打印到屏幕时的格式化输出操作. 在这里按照占位符将被替换的变量类型划分,更方便查询和记忆. 总结 1.1 General(通用占位符) 占位符 ...

  8. Go语言fmt.Printf使用指南

    文章引用自 fmt fmt包实现了类似C语言printf和scanf的格式化I/O.主要分为向外输出内容和获取输入内容两大部分. 向外输出 标准库fmt提供了以下几种输出相关函数. Print Pri ...

  9. C/C++编程笔记:C语言基础printf()和scanf()函数,大学入门知识

    在解释这两个函数之前,为了方便大家更容易理解,我们先来讲讲下面的这幅图. ​ 这个图中的例子其实很简单,我们就是把题目通过输入设备(例如键盘鼠标)传输到计算机中,然后让计算机进行运算得出结果,再然后把 ...

随机推荐

  1. IntelliJ 启动不同端口的两个spring cloud项目

    IntelliJ 启动不同端口的两个spring cloud项目 1,使用maven进行clean package 2,在Terminal界面,输入java -jar xxx.jar --server ...

  2. [Node.js] Setup Local Configuration with Node.js Applications

    Github To stop having to change configuration settings in production code and to stop secure informa ...

  3. java面向接口编程

    在oop中有一种设计原则是面向接口编程,面向接口编程有非常多优点,详细百度一大片.我来谈一下详细的使用中的一些不成熟的见解.! 首先面向接口编程能够消除类之间的依赖关系,使得业务仅仅依赖接口. 这样有 ...

  4. jenkins集成钉钉

    1.创建通知人群组,添加机器人 2.2.获取自定义机器人webhook 3.jenkins 安装"Dingding[钉钉] Plugin"插件: 4.插件安装完成后,创建/修改任务 ...

  5. postgresql数据库psql控制台操作命令

    登录postgresql数据库控制台 psql 数据库名 登录成功显示 [zpf@kevin ~]$ psql postgres psql (9.4.1) Type "help" ...

  6. EarthWarrior3D游戏ios源代码

    这是一款不错的ios源代码源代码,EarthWarrior3D游戏源代码. 而且游戏源码支持多平台. 适用于cocos v2.1.0.0版本号 源代码下载: http://code.662p.com/ ...

  7. Makefile 文件怎么写

    跟我一起写Makefile:MakeFile介绍 Makefile 使用总结 1. make 命令与 Makefile 文件 在 Linux 平台,执行 make 命令时,会在当前目录下寻找 Make ...

  8. class--类②

    定义 C++ 对象 类提供了对象的蓝图,所以基本上,对象是根据类来创建的.声明类的对象,就像声明基本类型的变量一样.下面的语句声明了类 Box 的两个对象: Box Box1; // 声明 Box1, ...

  9. Coursera Algorithms week2 基础排序 练习测验: Dutch national flag 荷兰国旗问题算法

    第二周课程的Elementray Sorts部分练习测验Interview Questions的第3题荷兰国旗问题很有意思.题目的原文描述如下: Dutch national flag. Given ...

  10. C语言实现字符串拼接

    #include <stdio.h>#include <stdlib.h>#include <string.h> char* str_contact(const c ...