摘要:文本文件:以字符编码的文件 二进制文件:以值编码的文件 文本文件的处理函数: fgetc fputc fgets--fputs fprintf--fscanf fread--fwrite 二进制文件: fwrite: 参数: 1;待写入到文件中的数据的地址 2: 返回值:写入成功,返回参3的值 失败
阅读全文
摘要:只使用rand函数生成的随机数是伪随机 #include <stdlib.h> #include<time.h> srand(time(NULL)) int i = rand()
阅读全文
摘要:printf:格式化输出到屏幕 scanf:从屏幕格式化的获取数据 sscanf:从str指定的字符串中读取数据,并格式话数据 sprintf:将格式化的数据写入到str中 fscanf:从文件中格式化的获取数据 1.会提前判断下一次格式匹配是否满足,如果不满足,提前结束读取,相当于文件指针到达文件
阅读全文
摘要:野指针:定义一个指针不赋初值 空指针:定义一个指针赋值位NULL 野指针和空指针都是不能操作的 解决办法: 1.对一个变量取地址 2.通过malloc申请一块空间
阅读全文
摘要:大端:数据的高位放在低地址中,低位放在高地址中 小端:数据的高位放在高地址中,低位放在低地址中 可以通过共用体验证大小端 union test{ int num; char ch; } test.num=0x12345678 if (test.ch=0x78) { 小端 } if(test.ch =
阅读全文
摘要:共用体: 1.所有的成员变量的地址一致,等同于整个联合体的地址 2.联合体的大小是内部成员变量中,最大的成员变量的大小 3.修改其中一个成员变量的值,其他成员变量的值也随之修改 枚举: 通常是整形常量,不能浮点值,可以是负值,默认初值从0开始,后续较前一个+1,可以给任意常量赋值,后续+1,但是前一
阅读全文
摘要:1.void (*p) (int); 2.typedef void (*p) (int) 第一种是定义了一个函数指针变量,第二种是定义了一个函数指针类型
阅读全文
摘要:数组不初始化的话,元素的值为随机值,必须要进行部分初始化和完成初始化,部分初始化的话,其余的值默认为0 1.一维数组的定义和初始化,以及和指针连用 1,不写数组长度 2,写数组长度,但是初始值不够数组长度,其他赋值为0 3. 写数组长度,长度跟赋值个数等同 int a []={1,2,3,4,5};
阅读全文
摘要:perror(“输出字符串”):函数会把输出字符串和对应的解释拼接起来 printf,scanf,perror这三个库函数操作标准文件指针stdout,stdin,stderr, stdin的文件描述符是0,通过文件描述符找到对应的inode,找到对应的是文件,该文件对应的设备是键盘 stdout的
阅读全文
摘要:参考链接如下:https://blog.csdn.net/chenyijun/article/details/79441166 32位内存: 代码段(.text):存放二进制的代码 数据段: 1.只读数据段(.rodata):整型常量、浮点数常量和字符常量 2.未初始化数据段(.bss)初始化位0和
阅读全文
摘要:gdb 可执行程序 list(l):查看文件内容,默认显示有main函数的文件,默认显示10行 show listsize:显示默认显示的行数 set listsize n:设置显示的行数n l 行数:显示指定行数的上下文 l 函数名:显示指定函数的上下文 l 文件名:行数:显示指定文件的指定行数的
阅读全文
摘要:如果源代码文件少,可以直接使用gcc编译 如果代码过多,就需要使用make工具 make工具需要makefile文件 makefile文件的命名: makefile或者Makefile makefile中的规则: 目标:依赖 (tab)命令 app:a.c b.c c.c gcc a.c b.c c
阅读全文