【10天轻松掌握C语言】2、C语言必备基础知识
2017-02-22 18:34
281 查看
gcc和gdb用法
gcc用法:
gcc支持一下文件后缀:
.c C语言源文件
.h 程序包含的头文件
.i 已经与处理过的C源代码文件
.s 汇编文件
.o 编译后的目标文件
用法:
gcc -o hello hello.c
-o 输出可执行文件
-c 只要求编译器输出目标代码(.o文件),而不必输出可执行文件
-g 用于调试
./hello 运行可执行文件
程序调试:
3种方法:
1、设置输出:printf
2、利用gdb
3、二分法
利用FILE, LINE, FUNCTION实现代码跟踪调制
程序会输出当前运行的c文件,代码第几行,及运行函数名
C程序中包含数据结构与算法
数据类型
字符型数据:(sizeof可输出数据类型长度)
以下问题还不理解:
/usr/include文件下存放C语言的头文件
其中limits.h头文件中是每种类型所能表示的最大值与最小值
C语言中格式化打印中%x与%#x区别:
%#x打印前边会加0x。
%p打印地址。
字符常量:
字母大小写转换可以加减‘ ’来实现。
字符串常量
例:“hello”
表示常量:
用一个表示符表示常量,一般用大写字母,用#define定义:
#define PI 3.1415926(没有分号)
宏定义是直接替换。
变量的存储类型:
变量声明:存储类型 数据类型 变量名
存储类型:
auto,register,static,extern
auto修饰的变量,只能在对应的函数或文件内部使用(不加修饰的变量默认是auto修饰的)
register称为寄存器型,讲变量放到CPU寄存器中,可以加快运行速度,如果寄存器中没有空间,就放到内存中。用register修饰的变量不能取地址。
static 静态变量,变量默认初始化为0.可以使局部变量,也可以是全局变量。静态局部变量在内存中地址固定,程序不结束就不会消失;修饰的全局变量只能在本文件内使用,外部文件不可访问。
extern 全局变量,引用其他文件的变量用extern修饰
运算符
C语言提供的算术运算符:+,-,*,/,%,++,–
C语言提供的关系运算符:>,>=,<,<=,==,!=
逻辑运算符:!,&&,||。
位运算符:~,&,|,^,>>,<<
复制运算符:+=,-=,*=,/=,%=,&=,|=,^=,>>=,<<=
特殊运算符:
1. 三目运算符 ? :等价于if
2. 逗号运算符:
可以有多个运算量,按从左到右依次执行,
3.sizeof运算符
sizeof(类型或变量名)返回大小
C语言中的优先级
gcc用法:
gcc支持一下文件后缀:
.c C语言源文件
.h 程序包含的头文件
.i 已经与处理过的C源代码文件
.s 汇编文件
.o 编译后的目标文件
用法:
gcc -o hello hello.c
-o 输出可执行文件
-c 只要求编译器输出目标代码(.o文件),而不必输出可执行文件
-g 用于调试
./hello 运行可执行文件
程序调试:
3种方法:
1、设置输出:printf
2、利用gdb
3、二分法
利用FILE, LINE, FUNCTION实现代码跟踪调制
#include <stdio.h> int main(int argc,char **argv) { printf(“%s,%s,%d\n”,_FILE__, __LINE__, __FUNCTION__); return 0; }
程序会输出当前运行的c文件,代码第几行,及运行函数名
C程序中包含数据结构与算法
数据类型
字符型数据:(sizeof可输出数据类型长度)
以下问题还不理解:
char类型的符号
/usr/include文件下存放C语言的头文件
其中limits.h头文件中是每种类型所能表示的最大值与最小值
C语言中格式化打印中%x与%#x区别:
%#x打印前边会加0x。
%p打印地址。
字符常量:
字母大小写转换可以加减‘ ’来实现。
字符串常量
例:“hello”
表示常量:
用一个表示符表示常量,一般用大写字母,用#define定义:
#define PI 3.1415926(没有分号)
宏定义是直接替换。
变量的存储类型:
变量声明:存储类型 数据类型 变量名
存储类型:
auto,register,static,extern
auto修饰的变量,只能在对应的函数或文件内部使用(不加修饰的变量默认是auto修饰的)
register称为寄存器型,讲变量放到CPU寄存器中,可以加快运行速度,如果寄存器中没有空间,就放到内存中。用register修饰的变量不能取地址。
static 静态变量,变量默认初始化为0.可以使局部变量,也可以是全局变量。静态局部变量在内存中地址固定,程序不结束就不会消失;修饰的全局变量只能在本文件内使用,外部文件不可访问。
extern 全局变量,引用其他文件的变量用extern修饰
运算符
C语言提供的算术运算符:+,-,*,/,%,++,–
C语言提供的关系运算符:>,>=,<,<=,==,!=
逻辑运算符:!,&&,||。
位运算符:~,&,|,^,>>,<<
复制运算符:+=,-=,*=,/=,%=,&=,|=,^=,>>=,<<=
特殊运算符:
1. 三目运算符 ? :等价于if
2. 逗号运算符:
可以有多个运算量,按从左到右依次执行,
float x=10.5, y=1.8, z=0; //z是最后一个表达式的值 z = (x+=5, y=x+0.2); //z=y z = (x=y=5, x+=1); z = (x=5, y=6, x+y); z = (z=8, x=5, y=3);
3.sizeof运算符
sizeof(类型或变量名)返回大小
C语言中的优先级
相关文章推荐
- 【10天轻松掌握C语言】3、C语言输入输出
- 【10天轻松掌握C语言】4、C语言控制语句
- 【10天轻松掌握C语言】5、C语言数组与字符串
- 嵌入式系统需掌握的基础知识
- C语言内存分配基础知识
- →『你掌握了这些C的基础知识吗?』
- 每一个软件开发人员绝对必须掌握的关于 Unicode 和字符集的最基础的知识
- 每一个软件开发人员绝对必须掌握的关于 Unicode 和字符集的最基础的知识
- LINUX下进行C语言编程所需要的基础知识
- Oracle基础知识轻松学
- 在LINUX下进行C语言编程所需要的基础知识
- 学习c#应该需要掌握的基础知识
- 每一个软件开发人员绝对必须掌握的关于 Unicode 和字符集的最基础的知识
- 开发人员要掌握的关于Unicode和字符集的基础知识[ZT]
- 掌握IP路由协议配置的基础知识与技巧
- 在LINUX下进行C语言编程所需要的基础知识
- 每一个软件开发人员绝对必须掌握的关于 Unicode 和字符集的最基础的知识 (转)
- 面试-需要掌握的基础知识
- 每一个软件开发人员绝对必须掌握的关于 Unicode 和字符集的最基础的知识 - A
- C语言的基础知识