![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C语言
文章平均质量分 70
JUNYUK
这个作者很懒,什么都没留下…
展开
-
C语言基础笔记(2)
只有十进制有正负. 常量在数据段,动态内存分配在堆,变量在栈 ----------------------------------- 计算二维数组的长度 行数 row = sizeof(arr) / sizeof(arr[0]); sizeof(arr[0] 是第一行的长度 列数 col = sizeof(arr[0]) / sizeof(arr[0][0]); 二维数组作为函数参数传原创 2013-08-12 18:46:51 · 473 阅读 · 0 评论 -
C语言笔记(typedef, 缓冲)
<C和指针><C和陷阱><C专家编程> time + ./可执行文件 可以查看执行文件运行所用时间。 递归函数中,定义的变量若要在下一次递归中保留当前值,则需要定义为了全局变量或者static型,因为递归每调用一次都会开辟一个新的栈桢,自动型变量每次调用函数都会赋值,而静态型这赋一次值。 标准输入0,标准输出1,错误输出2 strncasecmp(str1,str2)不分大小写比较 动原创 2013-08-12 18:51:31 · 557 阅读 · 0 评论 -
C语言笔记(C++)
结构体,类在定义时没分配空间,用其定义变量时才会分配空间,所以C语言在的结构体不用有静态类型,因为静态类型在数据段,而如果在函数用用结构体定义变量,这变量在栈中,这样就冲突了,但在C++中有相应的机制处理些问题。 C++的cin.get()不读取缓冲区中的回车字符, 而cin.getline()将缓冲区中的回来读走 C++,C99,可以在任意位置定义变量,而C89必要在代码块“{ ”之后定义变原创 2013-08-12 18:52:37 · 630 阅读 · 0 评论 -
C语言笔记(进程,线程)
程序编写时要有架构,通过封装,体现出程序的架构,有了架构才能够才好拓展,维护,有函数接口,才好拓展,架构也明朗。 特殊设备(文件,linux下一切皆为文件)如管道,字符设备,读不到数据会阻塞。直接对文件操作即可以模拟硬件操作的效果(写/dev/input/even* 键盘文件,可以模拟键盘功能。 ateixt(void (*function)(void))绑定(注册)function指针定义的原创 2013-08-12 18:54:11 · 1844 阅读 · 0 评论 -
C语言基础笔记
--------------------------- D或者d+$ 删除当前行光标后面的内容. 命令 !$ 表示上一命令的参数 gcc -Wall XX.c 查看编译的警告信息 /etc/vimrc 下添加set ts=4,即可设置tab按一下跳4个空格.在终端命令行模式下输入 : set ts=4亦可,不过写在/etc/vimrc里,所有用户均改变,且永久保存,写在~/.vim原创 2013-08-12 18:45:49 · 492 阅读 · 0 评论 -
C语言笔记(头文件,库,结构体)
env 查看所有环境变量 ------------------------------------- 预处理:在编译之前通过预处理程序 gcc -E,预处理只是简单的替换,不作C语法检测,只检测宏的语法. 预处理以 # 号开头 宏 定义 #define 名字 宏体 #define名字(参数) 宏体 宏名字都用原创 2013-08-12 18:48:23 · 2343 阅读 · 0 评论 -
C语言笔记(3)
int a; 取a的低8位char(a),取a的8到16位char(a >> 8),取16到32位char(a>> 16) 已经是地址的变量,取其地址,还是它本身值,也就是说没有其他地址来记录已经地址的值的地址。如int a[3],此时的a已经是地址,再对其取地址&a,两次取得的值都是一样,没有其他地址来来存储死的地址。死的地址,记录在文件上,或者由编译器记录 Uint a:1; 位定义域,表原创 2013-08-12 18:49:58 · 431 阅读 · 0 评论