C
JiaXianghao.
这个作者很懒,什么都没留下…
展开
-
头文件、库文件的搜索顺序
头文件#include “headfile.h”搜索顺序①先搜索当前目录②然后搜索-I指定的目录③再搜索gcc的环境变量CPLUS_INCLUDE_PATH(C程序使用的是C_INCLUDE_PATH)④最后搜索gcc的内定目录/usr/include/usr/local/include/usr/lib/gcc/x86_64-redhat-linux/4.1.1/include...原创 2020-02-21 16:23:47 · 664 阅读 · 0 评论 -
找不到动态库解决方案
方法1 使用环境变量LD_LIBRARY_PATH 将动态库的绝对路径添加到该环境变量中 LD_LIBRARY_PATH=/usr/include/xxx:$LD_LIBRARY_PATH export LD_LIBRARY_PATH 直接在shell中是临时配置,我们可以写入到系统的配置文件中(~/.bashrc或者/etc/profile),从而达到永久配置的目的方法2 给动态...原创 2020-02-20 16:02:15 · 985 阅读 · 0 评论 -
位段
一.位段的使用使用位段需注意一下几点:1)位段的类型只能是int,unsigned int,signed int三种类型,不能是char型或者浮点型;2)位段占的二进制位数不能超过该基本类型所能表示的最大位数,比如在VC中int是占4个字节,那么最多只能是32位;3)无名位段不能被访问,但是会占据空间;4)不能对位段进行取地址操作;5)若位段占的二进制位数为0,则这个位段必须...转载 2020-02-21 16:14:03 · 127 阅读 · 0 评论 -
C知识点
多做之过多做之过,就是语言中某些不应该存在的特性,包括容易出错的switch语句,相邻字符串常量的自动连接和缺省全局作用域switchdefault可以出现在case列表的任何位置,它在其他的case均无法匹配时被选中执行,如果没有default,而且所有的case均不能匹配的时候,那么整条switch就什么也不做,default和case的顺序可以是任意的,但习惯上将default放在最...原创 2019-10-25 15:43:09 · 279 阅读 · 0 评论 -
段错误
什么是段错误?一旦一个程序发生了越界访问,cpu 就会产生相应的保护,于是 segmentation fault 就出现了,其实所谓的段错误就是访问了不可访问的内存,该内存要么不存在,要么该进程不具备访问的权限。段错误的原因非关联化一个空指针,非关联化一个空指针总是会导致一个段错误。而野指针就不一定会产生错误。试图访问一个不存在的内存地址(在进程的地址空间)试图访问内存的程序没有权利...原创 2019-10-14 18:44:46 · 65 阅读 · 0 评论 -
static关键字
C++的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。面向过程程序设计中的static静态全局变量特点:1、在全局数据区分配内存,静态变量都是在全局数据区。2、未经初始化的静态全局变量会被程序自动初始化为0(自动变量的值是随机的,除非它被显式初始化)。3、静态全局变量...原创 2019-10-14 18:53:45 · 59 阅读 · 0 评论 -
scanf读字符与读字符串
想象输入设备(键盘)连接着一个叫“缓冲”的东西,把缓冲认为是一个字符数组。当你的程序执行到scanf时,会从你的缓冲区读东西,如果缓冲区是空的,就阻塞住,等待你从键盘输入。现在假设你的缓冲区里有:abcd\n1234\n (其中\n是回车符)执行:scanf("%s",name);的时候,由于scanf是读数据直到看见空白符(空白符:指空格符、制表符、回车符)就停止的输入函数。所以执行后,把...原创 2019-10-14 18:56:05 · 382 阅读 · 0 评论 -
linux下动态库与静态库
静态库 静态库是一些.o目标文件的集合,一般以.a形式结尾。 静态库在程序链接阶段使用,链接器将程序要用到的函数从库中提取出来,并整合到程序中,程序运行不再使用静态库了。由于每个程序要用到函数都从库提取并整合在一起,所以可执行文件会比较大。创建静态库...原创 2019-09-03 17:29:52 · 106 阅读 · 1 评论 -
C语言中的结构体大小
什么是对齐? 现代计算机中,内存空间按照字节划分,理论上可以从任何起始地址访问任意类型的变量。但实际中在访问特定类型变量时经常在特定的内存地址访问,这就需要各种类型数据按照一定的规则在空间上排列,而不是顺序一个接一个地存放,这就是对齐。 &nb...原创 2019-09-04 19:52:40 · 381 阅读 · 0 评论 -
C语言
printf和scanf的返回值 printf返回值为打印的字符个数,scanf的返回值为读取的变量个数。原创 2019-09-04 16:04:21 · 224 阅读 · 0 评论 -
C语言编译到运行
C语言从源代码到可执行文件需要经过以下步骤 C语言源代码->预处理->汇编->翻译->链接->计算机执行预处理 作用: 预编译过程主要处理源代码文件中以“#”开始的与编译指令 ...原创 2019-09-04 16:00:27 · 2156 阅读 · 0 评论 -
printf格式
主要格式如下:"\033[代码;字背景颜色;字体颜色m字符串\033[0m"代码:0 OFF1 高亮显示4 underline5 &n...原创 2019-09-04 13:31:52 · 255 阅读 · 0 评论