iOS-C语言-C语言的介绍以及第一个例子HelloWorld
2016-07-08 01:05
357 查看
0:c语言的发展历史,贝尔实验室发明了c语言
1:c语言的优缺点:
1.1:优点:
高效(可以直接访问内存,可以通过指针的方式直接操作内存)
可移植(linux系统的底层就是c语言编写的,Android 的底层就是Linux,linux 又是c语言的),
功能强大,
灵活
1.2:缺点:
程序漏洞较多,
难以理解,//相对于对象的java,难理解,
难以维护,//一堆方法,萝卜开会
2:c语言的应用领域:
Linux操作系统,
嵌入式
计算机语言
机器人
工控领域
电影,3Dmax
计算机游戏
pc应用程序
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
第一个c语言程序
c语言的基本概念:
1:第一个C程序
2:程序的编辑,编译,连接和运行过程
3:程序排错和调试
4:变量
5:注释
6:标识符
7:关键字
8:数据类型
9:函数,
10:流程控制
11:案例:根据升高计算你的体重是否达标
0:首先是使用vim去编辑,
先创建一个HelloWorld.c 然后使用命令行工具去编译
注意这里是stdio而不是studio。不然会报错 HelloWorld.c:1:20:
fatal error: studio.h: No such file or directory
.h :代表是头文件的意思
stdio表示:standard buffered input&output 带缓冲的标准输入输出;
安装好了Command Line以后,gcc,gcc就是编译器
PS:苹果里面的cc和gcc其实都是链接到llvm-gcc的编译器,ll是lowlevel 底层,只要知道llvm 是苹果公司的编译器就可以了,其实cc和gcc都相当于是llvm-gcc的快捷方式
编译:可以通过gcc HelloWorld.c 也可以通过cc HelloWorld.c 来进行编译
还可以制定生成的文件名:通过cc HelloWorld.c -o obj.o 会生成文件 obj.o
运行:在苹果系统里面运行直接就是./obj.o
1:使用xcode去编辑
进入以后,选择第二个:Create a new Xcode project
然后选择OS X 里面的Application 里面的 Command Line Tool
输入Projcet Name-》HelloWorld,选择类型是c腌
选择制定的地址
点击左上角的三角进行编译
快捷键:
cmd+b 编译
cmd+r 运行
PS当新建文件的时候,可以选择是头文件还是c文件,还是c++w文件
一开始的时候可以推荐直接使用gcc来做,而不是xcode来做,就是为了练习
2: windows上面使用:
如何使用:http://jingyan.baidu.com/article/c275f6bacc0126e33c756771.html
下载 mingw-get-setup.exe
地址:https://sourceforge.net/projects/mingw-w64/files/latest/download?source=rw_typ_t5
1: 先touch 一个文件,然后可以通过open 命令来打开编辑软件编辑。
touch HelloWorld.c
open HelloWorld.c
2: 第一个C程序的详解:
#include <stdio.h>
int main(void){
printf("Hello World");
return 0;
}
1:c语言的优缺点:
1.1:优点:
高效(可以直接访问内存,可以通过指针的方式直接操作内存)
可移植(linux系统的底层就是c语言编写的,Android 的底层就是Linux,linux 又是c语言的),
功能强大,
灵活
1.2:缺点:
程序漏洞较多,
难以理解,//相对于对象的java,难理解,
难以维护,//一堆方法,萝卜开会
2:c语言的应用领域:
Linux操作系统,
嵌入式
计算机语言
机器人
工控领域
电影,3Dmax
计算机游戏
pc应用程序
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
第一个c语言程序
c语言的基本概念:
1:第一个C程序
2:程序的编辑,编译,连接和运行过程
3:程序排错和调试
4:变量
5:注释
6:标识符
7:关键字
8:数据类型
9:函数,
10:流程控制
11:案例:根据升高计算你的体重是否达标
0:首先是使用vim去编辑,
先创建一个HelloWorld.c 然后使用命令行工具去编译
注意这里是stdio而不是studio。不然会报错 HelloWorld.c:1:20:
fatal error: studio.h: No such file or directory
#include <stdio.h> int main(void){ printf("Hello World!\n"); return 0; }
.h :代表是头文件的意思
stdio表示:standard buffered input&output 带缓冲的标准输入输出;
安装好了Command Line以后,gcc,gcc就是编译器
PS:苹果里面的cc和gcc其实都是链接到llvm-gcc的编译器,ll是lowlevel 底层,只要知道llvm 是苹果公司的编译器就可以了,其实cc和gcc都相当于是llvm-gcc的快捷方式
编译:可以通过gcc HelloWorld.c 也可以通过cc HelloWorld.c 来进行编译
还可以制定生成的文件名:通过cc HelloWorld.c -o obj.o 会生成文件 obj.o
运行:在苹果系统里面运行直接就是./obj.o
1:使用xcode去编辑
进入以后,选择第二个:Create a new Xcode project
然后选择OS X 里面的Application 里面的 Command Line Tool
输入Projcet Name-》HelloWorld,选择类型是c腌
选择制定的地址
点击左上角的三角进行编译
快捷键:
cmd+b 编译
cmd+r 运行
PS当新建文件的时候,可以选择是头文件还是c文件,还是c++w文件
一开始的时候可以推荐直接使用gcc来做,而不是xcode来做,就是为了练习
2: windows上面使用:
如何使用:http://jingyan.baidu.com/article/c275f6bacc0126e33c756771.html
下载 mingw-get-setup.exe
地址:https://sourceforge.net/projects/mingw-w64/files/latest/download?source=rw_typ_t5
1: 先touch 一个文件,然后可以通过open 命令来打开编辑软件编辑。
touch HelloWorld.c
open HelloWorld.c
2: 第一个C程序的详解:
#include <stdio.h>
int main(void){
printf("Hello World");
return 0;
}
//1.#include 的意思 预编译,预处理指令,可以理解为java 中的import //2.stdio.h -》standard input output 标注输入输出 write read // 从内存写到外围设备,从外围设备中读写 ,h->header //3:<> "" 尖括号的意思是指的是:从系统路径搜索,如果是“” 那么就是从当前路径搜索 //4:int返回值和return 对应 //5: main 代表主函数的名称,也叫入口函数,命名必须是包括main 包括大小写,程序的入口从这里开始 //也是在main 函数结束。这个main 函数执行完了就结束了。 //如果主函数里面有一个while(1)的话是会一直执行,java 里面是不可以用非0来表示的。c语言里面可以的。 //6.参数 //int main() //int main(void) /** #include <stdio.h> int main(void){ printf("Hello World"); return 0; } */ //int main(int argc,char * argv[]) 这个里面是一个指针数组 /** #include <stdio.h> //字符指针数组(字符串数组) //argument count 参数数量argc //argument variable 参数的变量argv int main(int argc,char * argv[]){ for(int i=0;i<argc;i++){ printf("%s\n",argv[i]); } return 0; } */ /** 运行的时候,gcc HelloWorld.c 例如生成了a.exe 运行a.exe 你好 结果如下: C:\iOS\day02\demo>a.exe 你好 a.exe 你好 */ //printf 打印输出,后面加上\n就会回车 //return 的返回值的意思 //还可以加入一个标准的类库: //include <stdlib.h> 成功退出返回0,退出失败返回1 //在stdlib里面有两个宏定义 //#define EXIT_FAILURE 1 //#define EXIT_SUCCESS 0 /**http://zhidao.baidu.com/link?url=e0AgK3IuoChxC9Cv7vl3D0OacTUdj4DRf60XHTFti5goaquEzwZWR_G_22jWQO8BJ8zs30lA37_Ry-lZdBtTsK 宏定义和定义全局变量的区别: 1 作用时间不同。 宏定义在编译期间即会使用并替换,而全局变量要到运行时才可以。 2 本质类型不同。 宏定义的只是一段字符,在编译的时候被替换到引用的位置。在运行中是没有宏定义的概念的。而变量在运行时要为其分配内存。 3 宏定义不可以被赋值,即其值一旦定义不可修改,而变量在运行过程中可以被修改。 4 宏定义只有在定义所在文件,或引用所在文件的其它文件中使用。 而全局变量可以在工程所有文件中使用,只要再使用前加一个声明就可以了。换句话说,宏定义不支持extern。 */ #include <stdio.h> #include <stdlib.h> int main(void){ printf("helloWorld\n"); return EXIT_SUCCESS; }
相关文章推荐
- C++ 函数后加const
- VS2010 Win7 64位 C++ MFC DataGrid绑定实例
- C++ delete 和delete[] 的区别
- 再探C++Primer (5)const限定符
- 再探C++Primer(6) 标准库类型string、vector和迭代器
- OpenCV学习C++接口:图像遍历+像素压缩
- 一起talk C栗子吧(第一百七十三回:C语言实例--关闭终端中的缓冲功能一)
- C++ 最近面试题中遇到的一些问题
- 提高项目26.2-查成绩2
- 一个简单c语言windows程序的实现
- 查漏补缺——类(C++ Primer)
- C++ 读取 pcap文件
- 提高项目26.1-查成绩
- C语言中实现数组的动态增长
- 提高项目25.3选择排序
- C++sort函数的用法
- UVa1339(古老的密码)
- 【C++】实现的二叉搜索树BST
- C/C++框架和库
- C++traits技术的理解