c语言file_C语言程序的编译和调试
1、gcc编译器-熟练使用
gcc(GNU Compiler)是GNU推出的多平台编译器,可以将C、C++源程序编译连接成可执行文件,支持后缀如下:
后缀备注.cc语言源代码文件.h程序所包含的头文件.i已经处理过的C源码文件.s汇编语言源代码文件.o编译后的目标文件
#include int main(){ printf("hello world"); return 0;}
基本命令
gcc -o hello hello.c-o 输出可执行文件-c 只要求编译器输出目标代码(.o文件),而不必输出可执行文件-g 用于调试-Wall 输出文件不规范处./hello 执行
练习 1.....10的求和
#include int main(){ int n; n =1+2+3+4+5+6+7+8+9+10; printf("n=%d",n); return 0;}root@ubuntu:~/Desktop/AOSP/C# vim test1.croot@ubuntu:~/Desktop/AOSP/C# gcc test1.c -o test1 -Wallroot@ubuntu:~/Desktop/AOSP/C# ./test1 n=55root@ubuntu:~/Desktop/AOSP/C# vim test1.croot@ubuntu:~/Desktop/AOSP/C#
2、程序调试-掌握
利用 __FILE__,__LINE__,__FUNCTION__实现代码跟踪调试#include int main(){printf("%s,%s,%s",__FILE__,__FUNCTION__,"hello world");return 0;}__FILE__ 哪个文件 test.c__LINE__ 哪一行 __FUNCTION__ 哪个函数 main()
3、C语言基础-了解
一个程序应当包含两部分内容:对数据的描述,在程序中要指定数据的类型和数据的组职形式,即数据结构。对操作的描述,即操作歩骤,也就是算法。**线性结构、树形结构、图形结构、集合结构**算法的基本概念:做任何事情都有一定的步骤,步骤要按照一定的序进行。广义来说,为了解决一个问题而采取的方法和步骤就称为算法。比如:计算1*2*3.....*10 结果方式 1*2 = 2 2*3 = 6 6*4 = 24 ...... 以上也叫算法 #include int main(){ int a=1, i=2; while(i<=10){ a =a*i; i++; } printf("%s,%s,%d,a=%d",__FILE__,__FUNCTION__,__LINE__,a); return 0;}
4、总结与思考
总结 gcc编译器的使用
程序的调试C语言的基础介绍
思考
gcc作为一个交叉编译器,如何生成ARM平台可运行的程序。
c语言file_C语言程序的编译和调试相关推荐
- c语言file_C语言编程第20讲——几个有用的编译时才确定值的符号
在C语言编程中,有五个符号,它们的值在编译时,才由编译器替换成常量值,对程序员非常有用. 1.__STDC__ 如果编译器支持标准C语言,则将__STDC__变为1,否则变为0. 例如下面的代码: # ...
- c语言file_C语言 技能提升 系列文章(七)格式化输入/输出
当初大家入门学习C语言的时候,面对一个黑黑的命令行界面,仅有的交互方法只有printf/scanf这两个函数作为输入输出.但是,大家知道吗?这两个函数后面还有很多兄弟姐妹.那就是C语言的格式化输入输出 ...
- ios上编译c语言的app,iOS App编译流程
三大编译器详解GCC / Clang / LLVM 传统的编译器通常分为三个部分,前端(frontEnd),优化器(Optimizer)和后端(backEnd).在编译过程中,前端主要负责词法和语法分 ...
- GCC的编译和调试--入门介绍
编译与调试 1.1编译的概念和理解 在进行C程序开发时,编译就是将编写的C语言代码变成可执行程序的过程,这一过程 是由编译器来完成的.编译器就是完成程序编译工作的软件,在进行程序编译时完成了一系 列复 ...
- gcc编译c文件_Linux下C语言程序的编译过程
Linux下C语言程序的编译过程 使用gcc编译程序时,编译工程分为4个阶段: (1)预处理:(Pre-Processing) (2)编译:(Compiling) (3)汇编:(Assembling) ...
- C 语言编程 — 程序的编译流程
目录 文章目录 目录 文章目录 C 程序的编译流程 预处理 编译 汇编 链接 编译多个源文件 文章目录 <C 语言编程 - GCC 工具链> <C 语言编程 - 程序的编译流程> ...
- 《编译与反编译技术》—第1章1.7节C语言程序的编译流程
本节书摘来自华章出版社<编译与反编译技术>一书中的第1章,第1.7节C语言程序的编译流程,作者庞建民,陶红伟,刘晓楠,岳峰,更多章节内容可以访问云栖社区"华章计算机"公 ...
- c语言程序源代码_程序的编译、链接和执行
同学们总是抱怨每次见到一道面试题都很难把它转化为程序源代码.然而不幸的是,即使是程序源代码对于计算机来说也还是太高级了.要想让计算机执行一段程序,我们必须把它翻译成最底层的机器指令才行.这其中要经历很 ...
- c语言如何编译及调试,中如何编译运行及调试C语言程序.doc
中如何编译运行及调试C语言程序 VC++6.0中如何编译运行调试C语言程序 1.启动VC++6.0 (如下图) 2.单个源文件的编译运行 例如下面的源代码 #include void main() { ...
最新文章
- ios android rsa加密解密,IOS RSA加密解密
- c语言遍历字符串数组的方法
- java.util.NoSuchElementException: No value present
- 天水市荣膺“2016中国智慧城市创新奖”
- IIS 之 Asp.Net项目内部运行详解
- 早期访问中带有NetBeans的Oracle公共云Java服务
- python3.6.5+cuda9+cudnn7.1+win10+tensorflow-gpu1.9.0下载配置
- 苹果系统中国日历服务器,AppleMac苹果电脑最好用的中国农历日历(TinyCal)v1.11.0
- C语言课后习题(23)
- java 泛型 泛型接口(Generic Methods)类型形参(Type Parameters)
- win10应用安装位置修改方法
- git 版本控制库的用法及其介绍
- MATLAB实现巴特沃斯数字滤波器
- 16 张图解 | 淘宝 10年架构演进
- leetcode系列】【面试题】【中等】数组中数字出现的次数(位运算、二分)
- TreeView的图标个性化和动态数据加载
- 互联网公司面试题以及范围
- matlab 解缠原理,相位解缠算法matlab
- 关联规则挖掘(Apriori算法和FP-Growth算法)
- Java新手小白入门篇 Java项目的构建
热门文章
- 归并排序的java代码_归并排序的原理及java代码实现
- vue从哪看组件版本_VUE源码解析之路
- knn算法的最佳k值_KNN(k-NearestNeighbor)算法笔记
- 【2017-05-25】WebForm母版页
- IIS Web负载均衡的几种方式
- 【VS开发】使用CTabView分割多页卡窗口
- 重启VirtualBox里面的系统提示VT-x features locked or unavailable in MSR错误
- SharePoint 2010遍历文档库中所有的文件,文件夹
- 买房子需要注意什么?最佳答案
- 禁止VirtualBox同步Guest系统的时间