深度剖析C语言知识体系 原理+实践,一课带你吃透C语言

282 阅读2分钟

C语言系统化精讲 重塑你的编程思想 打造坚实的开发基础

\/ itspcool 交流学习

每个优秀开发者都应该精通C语言?

技术素养,更深厚 如果想追求编程的更高境界,必须掌握操作系统、编译 原理、数据结构与算法等,C语言是前提。 造轮子能力,更强大 如果想成为运筹帷幄的技术大牛,先提升“造轮子”能 力。C对操作系统和内存的控制精准,造轮子最佳工具。 学习新语言,更轻松 如果想高效上手新语言,就要掌握编程语言的精髓。这精髓,只在C语言里学得到。

C语言系统化精讲 重塑你的编程思想 打造坚实的开发基础

gcc错误类型及对策:

c语法错误 错误信息:文件source.c中第n行有语法错误(syntex error) 头文件错误: 找不到头文件head.h表示有文件名错误、指定的头文件所在目录名错误等 档案库错误: 链接程序找不到所需的函数库(id:-lm:No such file or directory)可能是函数库名错误、指定的函数库所在目录名称错误等,检查的方法是使find命令在可能的目录中寻找相应的函数库名,确定档案库及目录的名称并修改程序中及编译选项中的名称 未定义符号:有未定义的符号(underfined symbol)

编译器根据条件的真假决定是否编译相关的代码。

常见的条件编译有两种方法:

a、根据宏是否定义,其语法如下:

#ifdef <macro>

……

#else

……

#endif

实例:

#define _DEBUG_

#ifdef _DEBUG_

printf(“The macro _DEBUG_ is defined\n”);

#else

printf(“The macro _DEBUG_ is not defined\n”);

#endif

b、根据宏的值,其语法如下:

#if <macro>

……

#else

……

#endif

实例:

#define _DEBUG_ 1

#if _DEBUG_

printf(“The macro _DEBUG_ is defined\n”);

#else

printf(“The macro _DEBUG_ is not defined\n”);

#endif