十三【了解】羞答答的程序初体验
Let's begin!让我们羞答答地迎接咱们程序中的第一次~!
思考:怎样在屏幕上,显示一句“果冻妹纸这么神奇呀?”呢?
解决:
1.新建一个文本文件,格式为.c
2.打开这个文件,并输入以下代码
#include<stdio.h>
int main(){
printf(" 果冻妹纸这么神奇呀?\n");
return 0;
}
3.在终端输入跳转到这个文件所在路劲,然后输入以下内容
cc 文件名.c -c
4.敲完上面的命令后我们发现在这个.c文件的同目录下出现了一个同名的.o文件
5.再然后我们继续在终端输入cc 文件名.o,会发现同目录下又多出来一个a.out的文件
6.在终端运行这个a.out文件即可发现效果
十四【理解】第一个C语言代码分析
#include
<stdio.h>
int main(){
printf(" 果冻妹纸怎么这么神奇呀?\n");
return 0;
}
分解:
1、
#include <stdio.h> 代表引入一个系统头文件,这个头文件名字叫stdio.h
这个头文件里包含一些输入/输出的信息
2、
int
main(){
}
这是一个主函数,作用是:告诉系统你的程序代码的执行顺序.程序里面有且只能有一个main函数
3、
printf(" 果冻妹纸怎么这么可爱呀?\n");
这句代码是让屏幕输出一句话,这句话的内容叫果冻妹纸怎么这么可爱呀?”
思考:
如果我要在程序里输出两句话,怎么办?
十五【理解】C语言转化为机器语言
前面我们说过,计算机只能识别0和1这两种方式的语言,所以不管你使用的是汇编语言还是高级语言,其最终都是转为0,1的组合方式。那么我们的C语言是怎样一步一步转换为机器语言并实现相应的功能的呢?
1、 编码:
首先,我们需要在.c格式的文件上编写C语言的代码,这个过程我们称之为“编码”,翻译成人话就是“写代码”,而这个.c格式的文件我们称之为“源文件”,里面的编码内容我们称之为“源代码”
2、编译:
当我们编码完成,就意味着我们需要将我们写的C语言代码转换为计算机能够识别的机器语言(0,1),所以我们会用C语言编译器进行一个转换的过程,我们将这个过程称之为编译。编译完成后,会生成一个.o文件,这个文件我们称之为“目标文件”
3、链接:
因为在编写代码的时候我们可能需要用到其他已经实现好了的C语言代码(比如说我们之前要调用的输出功能),这个时候就需要把你生成的目标文件和其他库文件进行整合生成一个.out可执行文件
这时候.out文件就是我们最终编写好的程序了!
总结:
源代码:
程序员自己写代码,.c文件就是C语言的源代码文件 (称之为源文件)
编译:
把源代码翻译成0、1,生成一个.o目标文件
调用编译器命令为:cc
xxxx.c -c
链接:
把目标文件和库函数进行整合生成一个.out可执行文件
调用编译器命令为:cc
xxxx.o
十六【掌握】用Xcode编写程序
1.运行Xcode,在接下来的图片中点击
然后选择OS X中的Application,再选择Command Line Tool
点击Next,然后来到下个界面
再然后找到main.c文件,编写代码
直接运行程序
查看结果
(2)或者按快捷键:
Command + R
如果只需要编译生成可执行文件就按:
Command + B
用Xcode编译生成的程序在哪?
Xcode的项目管理文件、target
十八【掌握】C语言注释符
思考:
(1)如果以后你的项目代码文件多了,那么你怎么快速地知道某某文件实现什么功能的呢?
(2)如果我想对某个语句逻辑做个解释,怎么做?
C语言中的注释:
注释的内容就是在程序进行编译时,让编译器无视掉注释的内容。作用是用来方便程序员阅读源代码的功能,说明某段代码的意思,或者做其他笔记
C语言有两种注释:
1、单行注释://注释的内容
功能://符号右边的一行内容被编译器忽略(按了回车才算换行)
快捷键:Command + /
2、多行注释:/* 注释的内容 */
功能:/ /符号里面的所有内容都被编译器忽略
注意:注释不能嵌套!
介绍:牛逼注释
// _ooOoo_
// o8888888o
// 88" . "88
// (| -_- |)
// O\ = /O
// ____/`---'\____
// .' \\| |// `.
// / \\||| : |||// \
// / _||||| -:- |||||- \
// | | \\\ - /// | |
// | \_| ''\---/'' | |
// \ .-\__ `-` ___/-. /
// ___`. .' /--.--\ `. . __
// ."" '< `.___\_<|>_/___.' >'"".
// | | : `- \`.;`\ _ /`;.`/ - ` : | |
// \ \ `-. \_ __\ /__ _/ .-` / /
//======`-.____`-.___\_____/___.-`____.-'======
// `=---='
//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
// 佛祖保佑 永无BUG
//
//佛曰:
// 写字楼里写字间,写字间里程序员;
// 程序人员写程序,又拿程序换酒钱。
// 酒醒只在网上坐,酒醉还来网下眠;
// 酒醉酒醒日复日,网上网下年复年。
// 但愿老死电脑间,不愿鞠躬老板前;
// 奔驰宝马贵者趣,公交自行程序员。
// 别人笑我忒疯癫,我笑自己命太贱;
// 不见满街漂亮妹,哪个归得程序员?
C语言中的数据类型
那大家想想,要在内存中存放一个数字,应该占多大的内存合适呢?C语言为了帮我们省下这些思考,所以提供了不同的数据类型,并且每个数据类型占用不同大小的内存,也有着取值范围的差异!
1.整型:用于准确地表示整数,根据表示范围的不同分为以下三种:
短整型(short) < 整型(int) < 长整型(long)
2.实型(浮点型):用于标识实数(小数)根据范围和精度不同分为以下两种:
单精度浮点数(float) < 双精度浮点数(double)
注意:float只能够保证7位数字是有效的!!!
3.字符型:用来描述单个字符,char 如'a','b', 'c'等
那大家想想,要在内存中存放一个数字,应该占多大的内存合适呢?C语言为了帮我们省下这些思考,所以提供了不同的数据类型,并且每个数据类型占用不同大小的内存,也有着取值范围的差异!
1.整型:用于准确地表示整数,根据表示范围的不同分为以下三种:
短整型(short) < 整型(int) < 长整型(long)
2.实型(浮点型):用于标识实数(小数)根据范围和精度不同分为以下两种:
单精度浮点数(float) < 双精度浮点数(double)
注意:float只能够保证7位数字是有效的!!!