黑马程序员——C语言学习——概述
-----------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -----------
OS系统简介
操作系统的地位
什么是iOS
什么是iOS开发
常用的UNIX指令:(需要经常使用才不容易忘记)
按一下tab键,可以自动补齐指令名称、文件名、文件夹名等
为什么要选择iOS(跟android的比较)
C语言
1> 其实iOS开发就是开发iPhone\iPad上的软件,而要想开发一款软件,首先要学习程序设计语言
2> iOS开发需要学习的主要程序设计语言有:C语言、C++、Objective-C,其中C++、Objective-C都是以C语言为基础,从C语言衍生出来的。因此,C语言是开发iOS软件的基础。
1、 C语言简介
1) C语言于1972年发明,首次使用是用于重写UINX操作系统(UNIX以前主要是用汇编语言写的,它奠定了操作系统的基础)。在一次失败的实验中偶然得出
2) 随着UNIX操作系统的成功,C语言也得到了大幅度地推广,被先后使用到大、中、小、微型主机上,至今还是世界上最流行、 使用最广泛的高级程序设计语言之一
3) C语言是一门面向过程的语言,非面向对象的语言
2、 特点
1) 丰富的运算符
2) 丰富的数据类型
3) 可以直接操作硬件
4) 高效的目标代码
5) 可移植性好
3、 主要用途
1) 编写系统软件、图形处理、单片机程序、嵌入式系统开发
2) 编写游戏外挂
3) 编写android程序
4) 编写iOS程序
等等。
编译-链接-运行
C程序是由函数构成。
函数即可以看做成一个个独立的功能。
每个函数都有自己独立的名称,当想用这个函数的时候,直接调用这个函数名称即可,这个动作称为调用函数。
函数这么多,就产生一个问题:先从哪个开始执行,即程序的入口。
这个入口是main函数,即主函数,它在程序中的作用是调用其他函数。
C程序的源文件拓展名是c 或者 .C
C程序的源文件不能直接运行。因为计算机只能识别0和1,源文件包含了很多C语言的英文代码,计算机是不可能看懂的
C程序从开发到运行所需要哪些步骤?
1> 编写.c源文件
2> 编译.c源文件为.o目标文件
将C源程序翻译成计算机能识别的0和1
在终端中输入:cc –c 文件名.c
编译成功,会生成.o目标文件
3> 链接.o目标文件为可执行文件
将.o文件和C语言函数库组合在一起,生成可执行文件(因为调用的C语言函数库里的函数,所以要把这些东西绑在一起)
u 在终端中输入:cc 文件名.o
u 链接成功,会生成a.out可执行文件
4> 运行可执行文件
两种运行方式
u 直接双击打开a.out文件
u 终端中使用 ./a.out指令
修改文件内容之后,一定要重新编译、链接,再运行
\n的作用:回车换行
修改可执行文件名称:cc xxx.o -o 文件名
编译链接也可一步完成:在终端中输入:cc 文件名.c
注意事项:
需要把main函数写在最后,否则编译的时候会warning(报警)。
编译只检查语法、语言是否错误,不检查逻辑错误。
编译器的错误和警告功能
1. 如果代码有语法问题,编译器会直接报错。并指出错误的个数和具体行号。
2. 只要有1个错误,程序就不能编译成功,也不会生成.o文件
3. 警告信息只是编译器的一些建议,并不影响编译通过
-----------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -----------
黑马程序员——C语言学习——概述相关推荐
- 黑马程序员——c语言学习心得——函数传递二维数组
黑马程序员--c语言学习心得--函数传递二维数组 -------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 一.定义指针的时候一定要初始化. 变量 ...
- 黑马程序员——C语言学习——预处理指令、extern与static、typedef、递归
--------Java培训.Android培训.iOS培训..Net培训.期待与您交流! -------- 一. 预处理指令 顾名思义,预处理,就是预先处理的指令,在代码编译之前执行.预处理指令的位 ...
- 黑马程序员_java自学学习笔记(八)----网络编程
黑马程序员_java自学学习笔记(八)----网络编程 android培训. java培训.期待与您交流! 网络编程对于很多的初学者来说,都是很向往的一种编程技能,但是很多的初学者却因为很长一段时间无 ...
- 黑马程序员C语言基础(第八天)复合类型(自定义类型)(结构体)、共用体(联合体)、枚举enum、 typedef
黑马程序员C语言基础(第一天) 黑马程序员C语言基础(第二天) 黑马程序员C语言基础(第三天) 黑马程序员C语言基础(第四天)数据类型 黑马程序员C语言基础(第五天)运算符与表达式.程序流程结构.数组 ...
- 黑马程序员C语言基础(第五天)运算符与表达式、程序流程结构、数组和字符串、函数
https://www.bilibili.com/video/BV15W411K7k6?p=93&spm_id_from=pageDriver 黑马程序员C语言基础(第五天)运算符与表达式.程 ...
- 黑马程序员C语言基础(第三天)
黑马程序员C语言基础(一)第三天 https://www.bilibili.com/video/BV15W411K7k6?p=40 文章目录 低级语言与高级语言 c语言优缺点 c语言应用领域 通过gc ...
- 黑马程序员Java教程学习笔记(五)
学习视频:https://www.bilibili.com/video/BV1Cv411372m 如侵权,请私信联系本人删除 文章目录 黑马程序员Java教程学习笔记(五) 日期时间:Date.Sim ...
- 黑马程序员Java教程学习笔记(三)
学习视频:https://www.bilibili.com/video/BV1Cv411372m 如侵权,请私信联系本人删除 文章目录 黑马程序员Java教程学习笔记(三) 面向对象:设计对象.注意事 ...
- 黑马程序员C语言基础(第七天)内存管理
黑马程序员C语言基础(第一天) 黑马程序员C语言基础(第二天) 黑马程序员C语言基础(第三天) 黑马程序员C语言基础(第四天)数据类型 黑马程序员C语言基础(第五天)运算符与表达式.程序流程结构.数组 ...
最新文章
- 【原创】WP7.8 ROM更新图文并茂
- 每日一皮:没想到现实比赛里也能和拳皇一样蓄力攻击...
- 政策表达式截取json_json格式数据如何提取指定中文字符串。
- [课程复习] 数据结构之线性表、树、图、查找、排序经典算法复习
- python开发自己的工具包_爬虫开发python工具包介绍 (4)
- python棋盘覆盖问题_棋盘覆盖问题可视化动图——python
- IT职场人生系列之七:学外语
- 用户与组在Linux 菜单,linux 用户和组的管理
- 关于EPOLL的ET和LT模式的深入理解
- sql插入不重复的数据
- AltiumDesigner 的 PcbDoc文件转 pads 的 PCB文件
- 瘦AP如何连接到无线控制器AC
- 机器学习必须要会的:方差、标准差、相对标准偏差、正态分布的概念
- Python全年天数查询源代码
- VUE解决IE不能用的方法
- CentOS 7 root 密码破解及 grub2 加密
- Threejs系列--14游戏开发--沙漠赛车游戏【纹理贴图之loading加载】
- 阿里云合作伙伴查询合作流程
- 两轴插补速度怎么给定_如何正确计算及设置DMC1000插补的矢量速度
- Loadrunner C/S关联函数(LSP)AND(LSSS)使用-案例