C语言知识点
Gerald Kwok
低到尘埃里,才能开出花来。
展开
-
C语言操作符
操作符: C语言的操作符分为算术操作符、位操作符、赋值操作符、单目操作符、关系操作符、逻辑操作符、条件操作符、逗号表达式、下标引用、函数调用和结构成员。 其中对于我这样的小白来说,有很多是不常用到的,例如位操作符。下面我将为大家总结一下这些对我们来说经常用到的但叫不上名字的操作符们。算术运算符 + - * / % 前面四个分别为数学中的加...原创 2018-10-22 21:23:50 · 167 阅读 · 0 评论 -
qsort函数排序字符串数组
qsort函数排序字符串数组描述:qsort()函数是一个库函数,也是一个万能的排序函数,只需要自己写好compare()函数即可,那么怎么用qsort()函数来排序字符串呢?思路:个人感觉,这个问题很好解决,困难的就是在调用函数时,参数应该怎么写。有两个需要注意的点!!!!!先来看一下main()函数int main(void){ char *arr[] = {"dddd"...原创 2018-11-11 20:41:07 · 6835 阅读 · 5 评论 -
指针的进阶
在开始总结指针的进阶之前,先说几个小知识点。无论是几维数组,在传参时都会发生退化问题,退化成指针。所有的数组都是一维的,可以把多维数组想象成一维数组。任何一个函数,只要函数有参数,就要形参实例化,形成临时变量。在函数内定义的变量为局部变量,局部变量都具有 临时性。每调用函数都会形成栈帧,返回函数释放栈帧,所以递归如果写的不好会导致栈溢出。下面我们开始这次总结的内容。字符指针...原创 2018-11-12 16:26:30 · 307 阅读 · 0 评论 -
内存对齐
1. 为什么要存在内存对齐:大部分参考资料是这么说的平台原因(移植原因):不是所有的硬件平台都能访问任意地址上的任意数据的;某些硬件平台只能在某些地址处取某些特定类型的数据,否则抛出硬件异常。性能原因:数据结构(尤其是栈)应该因可能地在自然边界上对齐。原因在于,为了访问未对齐的内存,处理器需要做两次内存访问;而对齐的内存访问仅需要一次访问。举个例子:在cpu读取数据的时候,...原创 2018-11-19 19:09:15 · 235 阅读 · 0 评论 -
自定义类型
自定义类型1. 结构体结构体的声明结构体的基础知识结构是一些值得集合,这些值称为成员变量。结构的每个成员可以是不同类型的变量。在C语言中结构体成员列表可以为空。结构体的声明struct tag{ member-list;}variable-list;orstruct tag;//空结构体例如一个学生的结构体:struct Stu{ char...原创 2018-11-21 20:33:31 · 1285 阅读 · 0 评论 -
动态内存管理
动态内存管理在开始这个知识点的总结前,我要先强调两个非常重要的点。所有的内存申请都要进行返回值判断。申请完,如果这段内存不再使用后,要调用free()函数进行释放。为什么要进行动态内存分配?我们现在已经掌握的内存开辟方式有:int val = 7; //在栈上开辟4个字节char arr[10] = {0}; //在栈空间上开辟10个字节连续的空间但是上面两种开辟空间的方...原创 2018-11-26 23:01:20 · 146 阅读 · 0 评论 -
动态开辟内存的几个常见的错误以及几个典型的面试题
动态开辟内存的几个常见的错误以及几个典型的面试题常见的动态内存错误对NULL指针解引用操作int main(void){ int *p = (int *)malloc(sizeof(int)); *p = 20; //这里没有判断返回值 //如果返回值为NULL则会出现错误 free(p); system("pause"); return 0;}这里没有判断...原创 2018-11-27 11:28:36 · 618 阅读 · 1 评论 -
C语言文件操作
C语言文件操作在开始这篇博客之前,我想灌输一个思想:一切皆文件什么是文件?在程序设计中,我们说的文件一般有两种:程序文件和数据文件。程序文件程序文件包括:源程序文件(后缀为.c)、目标文件(windows环境下后缀为.obj)、可执行程序(windows环境下后缀为.exe)数据文件文件的内容不一定是程序,而是程序运行时读写的数据。比如程序运行需要从中读取数据的文件,或者输...原创 2018-11-30 19:13:30 · 161 阅读 · 0 评论 -
数据在内存中的存储总结
数据类型介绍:基本内置类型分别为:char //字符数据类型short //短整型int //整形long //长整型long long //更长的整形float //单精度浮点数double //双精度浮点型//注意: C语言中没有字符串类型类型的意义:1. 使...原创 2018-11-04 20:33:05 · 13355 阅读 · 0 评论