![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔试题
文章平均质量分 80
流光一逝&&
菜鸡为入门程序员
展开
-
BIT-0程序环境和预编译 c语言预处理
1.程序的翻译环境2.程序的执行环境3.c语言程序的编译+链接4.预定义符号介绍5.预处理指令#define6.宏和函数的对比7.预处理操作符#和##的介绍8.命令定义9.预处理指令#include10.预处理指令#undef11.条件编译程序的翻译环境和执行环境在ANSI C的任何一种实现中,存在两个不同的环境,第一种是翻译环境,在这个环境中源代码被转换为可执行的机器指令,第二种是执行环境它用于实际执行代码详解编译+链接翻译环境程序的编译过程1.组成一个程序的每个源文原创 2021-11-04 16:59:09 · 572 阅读 · 0 评论 -
c语言文件操作
1.什么是文件2.文件名3.文件类型4.文件缓冲区5.文件指针6.文件的打开和关闭7.文件的顺序读写8.文件的随机读写9.文件结束的判定什么是文件磁盘上的文件是文件但是在程序设计中,我们一般谈的文件有两种:程序文件,数据文件程序文件包括源程序文件(后缀为.c),目标文件(windows环境后缀为.obj),可执行程序(window环境后缀为.exe)数据文件文件的内容不一定是程序,而是程序运行时读写的数据,比如程序运行需要从中读取数据的文件,或者输出n内容的文件这次讨论的是数原创 2021-11-01 11:07:26 · 323 阅读 · 1 评论 -
动态分配内存深入理解
动态内存函数的介绍mallocfreecallocrealloc为什么存在动态内存分配呢 int val = 20; 在栈空间上开辟四个字节 char arr[10] ={0}; 在栈空间上开辟10个字节的连续空间 但是上述的开辟空间的方式有两个特点: 1.空间开辟大小是固定的。 2.数组在申明的时候,必须指定数组的长度,它所需要的内存在编译时分配。但是对于空间的需求,不仅仅是上述的情况,有时候我们需要的空间大小在程序运行的时候才能知道,那数组的编译时开辟空间的方式就不原创 2021-10-29 14:41:01 · 425 阅读 · 0 评论 -
结构体,枚举,联合体
内置类型-c语言自己的数据类型charlongshortintfloatdouble复杂对象,复杂类型,自定义类型: 结构体,枚举,联合体结构体结构体类型的声明结构体的自引用结构体变量的定义和初始化结构体内存对齐结构体传参结构体实现位段(位段的填充&可移植性)枚举枚举类型的定义枚举的优点枚举的使用联合联合类型的定义联合的特点联合大小的计算结构体结构体的声明结构的基础知识:结构是一些值的集合,这些值称位成员变量,结构的.原创 2021-10-23 23:43:14 · 132 阅读 · 0 评论 -
字符函数和字符串函数的使用
字符函数和字符串函数的使用求字符串长度 strlen长度不受限制的字符串函数 strcpy strcat strcmp长度受限制的字符串函数介绍strncpy strncat strncmp字符串查找 strstr strtok错误信息报告 strerror内存操作函数memcpy memmove memset memcmpc语言中对字符和字符串的处理很是频繁,但是c语言本身是没有字符串类型的字符串通常放在常量字符串中,或者字符数组中,字符串常量,适用于那些对它不做修改的字符串函数.原创 2021-10-21 22:34:39 · 457 阅读 · 0 评论 -
常见面试题 库函数strcat strncat 简单算法题
下面代码运行结果是什么int main(){ unsigned long pulArray[] = { 6, 7, 8, 9, 10 }; unsigned long *pulPtr; pulPtr = pulArray; *(pulPtr + 3) += 3; /* 6 7 8 9 10 这里的*(pulPtr+3)拿到9这块空间,然后将他加上3改成12 */ printf("%d,%d", *pulPtr, *(pulPtr + 3)); //这里的*pulPtr,是6, *.原创 2021-10-19 10:27:50 · 144 阅读 · 0 评论 -
指针和数组面试题解析
数组名是首元素的地址,但是有两个例外1.sizeof(首组名) - 数组名表示整个数组2.&数组名 - 数组名表示整个数组除了这两个之外,其他都是表示首元素的地址一维数组整型数组```cint main(){ int a[] = { 1, 2, 3, 4 }; printf("%d\n",sizeof(a));//16 //sizeof(数组名) -计算的是数组总大小,单位是字节 4*4 = 16 printf("%d\n",sizeof(a+0));//4 //原创 2021-10-18 11:08:54 · 120 阅读 · 0 评论 -
指针进阶复习, 回调函数使用实例
指针进阶复习int Add(int x, int y){ return x + y;}int main(){ //指针数组 int* arr[10]; //数组指针 int* (*pa)[10] = &arr;*pa pa前面加一颗星说明pa是指针 指向的是[10]说明指向数组有10个元素pa指向数组arr的每个元素类型是int* 所以前面加上int* 函数指针 int(*paAdd)(int,int) = Add; //函数名就是函数的地址&Add.原创 2021-10-17 12:16:09 · 178 阅读 · 0 评论 -
深度迫析数据在内存中的存储
数据类型详细介绍整型在内存中的存储,原码,反码,补码大小端字节序介绍及判断浮点型在内存中的存储解析c语言类型内置类型char 字符数据类型short 短整型int 整型long 长整型long long更长的整型float 单精度浮点数double 双精度浮点数自定义类型(构造类型)以及他们所占存储空间的大小,类型的意义,1.使用这个类型开辟存储空间的大小,(大小决定了使用范围)如何看待内存空间的视角类型的基本归类整型家族:属于内置类型.原创 2021-10-13 11:45:12 · 76 阅读 · 0 评论 -
笔试题一大片
下面代码结果是什么int main(){ int arr[] = { 1, 2, (3, 4), 5 }; printf("%d\n", sizeof(arr));//16 return 0;}上面代码结果是16,因为(3,4)是逗号表达式,只看最后面的那个数字下面代码运行的结果是什么int main(){ char str[] = "hello bit"; printf("%d %d\n", sizeof(str), strlen(str));//10,9 //s.原创 2021-09-28 17:10:58 · 201 阅读 · 0 评论