c语言
CR7lmz
这个作者很懒,什么都没留下…
展开
-
C/C++ const用法
C/C++中const的用法1.修饰常量const int tmp;//tmp为常量,不可改变int const tmp;//tmp为常量,不可改变2.修饰指针主要是看const 在*前后,在 * 则指针指向的内容为常量,在 * 后则指针为常量(也就是指针的指向不能变)。const int *ptr;//指针所指向的内容为常量。int const *ptr;//指针所指向的内容为常...原创 2020-02-05 18:08:07 · 130 阅读 · 0 评论 -
C语言 指针
一、一级指针指针就是地址, 利用这个地址可以找到指定的数据,指针的大小是固定的4个字节。如图表示为:二、二级指针由于指针变量也是变量,是变量就有地址,所以一级变量的地址就是二级指针。如果说一级指针是用于对数据的更新, 那么二级指针就是用于对数据地址的更新。如图理解:三、指针数组首先它是一个数组,数组的元素都是指针,数组占多少个字节由数组本身决定。它是“储存指针的数组”的简称。...原创 2019-06-15 09:42:31 · 146 阅读 · 0 评论 -
C/C++ sizeof 与strlen 区别
sizeofsizeof是分配给对象实际所占的内存空间的大小,不受里面的内容限制。sizeof(…)是****运算符,由于是在编译时计算的,所以不能用来计算经过动态分配的内存空间的大小。实际上使用sizeof来返回类型以静态分配的对象、结构体、数组的空间,返回值和其内容没有关系。strlenstrlen是计算字符串的长度,以‘ \0 ’为字符串的结束标志。返回从第一个地址开始到‘ \0 ...原创 2020-01-27 16:51:24 · 117 阅读 · 0 评论 -
C语言 数据结构 二叉树
一、树的概念及结构1.树是一种非线性的数据结构,它是由n(n>=0)个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。它具有以下的特点:每个结点有零个或多个子结点;没有父结点的结点称为根结点;每一个非根结点有且只有一个父结点;除了根结点外,每个子结点可以分为多个不相交的子树。2.判断树与非树a.子树是不相交的;b.除了根...原创 2019-08-02 14:29:31 · 298 阅读 · 0 评论 -
C语言 数据结构 栈和队列
一、栈1、栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。压栈:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。出栈:栈的删除操作叫做出栈。出数据也在栈顶。2、栈的实现栈的实现一般可以使用数组或者链表实现,相对而言数组的结构实现更优一些...原创 2019-07-27 17:42:56 · 168 阅读 · 0 评论 -
C语言 数据结构 顺序表和链表
一、线性表线性表(linear list)是n个具有相同特性的数据元素的有限序列。 线性表是一种在实际中广泛使用的数据结构,常见的线性表:顺序表、链表、栈、队列、字符串…线性表在逻辑上是线性结构,也就说是连续的一条直线。但是在物理结构上并不一定是连续的,线性表在物理上存储时,通常以数组和链式结构的形式存储。二、顺序表顺序表一般可以分为:1. 静态顺序表:使用定长数组存储。2. 动态顺...原创 2019-07-27 00:37:14 · 497 阅读 · 0 评论 -
C语言 数据结构 堆
一、堆的概念及结构1、堆的概念:如果有一个关键码的集合K = {k0,k1, k2,…,kn-1},把它的所有元素按完全二叉树的顺序存储方式存储在一个一维数组中,并满足:Ki <= K2i+1 且 Ki<= K2i+2 (Ki >= K2i+1 且 Ki >= K2i+2) i = 0,1,2…,则称为小堆(或大堆)。将根节点最大的堆叫做最大堆或大根堆,根节点最小的堆叫...原创 2019-08-04 00:43:14 · 334 阅读 · 0 评论 -
C语言 数据结构 复杂度
一、时间复杂度_空间复杂度1、时间复杂度的定义:在计算机科学中,算法的时间复杂度是一个函数,它定量描述了该算法的运行时间。一个算法执行所耗费的时间,从理论上说,是不能算出来的,只有你把你的程序放在机器上跑起来,才能知道。2、大O的渐进表示法:实际中我们计算时间复杂度时,我们其实并不一定要计算精确的执行次数,而只需要大概执行次数,那么这里我们使用大O的渐进表示法。推导大O阶方法:a、用常...原创 2019-07-24 16:10:40 · 352 阅读 · 0 评论 -
C语言文件操作相关函数
一、什么是文件在程序设计中,一般谈的文件有两种:程序文件,数据文件。1.程序文件:包括源程序文件(后缀为.c),目标文件(windows环境后缀为.obj),可执行程序(windows环境后缀为.exe)。2.数据文件:文件的内容不一定是程序,而是程序运行时读写的数据,比如程序运行需要从中读取数据的文件,或者输出内容的文件。二、文件名一个文件要有一个唯一的文件标识,以便用户识别和应用...原创 2019-07-05 10:56:14 · 123 阅读 · 0 评论 -
C语言 结构体位断 枚举和联合!
一、结构体结构体是一些值得集合,这些值成为成员变量。结构体每个成员可以是不同成员。1、结构体类型的创建结构体的声明:struct tag//关键字+标签{member-list;//成员列表}variable-list;//变量 在声明结构式可以不完全声明: 例:struct { int a; char b; f...原创 2019-07-04 11:19:37 · 223 阅读 · 0 评论 -
C语言操作符
c语言中关于操作符部分的学习,可以主要分为两个部分:操作符和表达式。一、算数操作符算数操作符,主要是:+ , -, *, /, %二、移位操作符移位操作符,分别是左移操作符 << 和右移操作符 >> ,(PS:移位操作,是特别针对二进制序列进行的操作)左移操作的 移位规则: 将所有有效位整体向左移动,具体移动多少位是自己决定的,并抛弃左边最高位,并在右边空...原创 2019-05-24 12:04:37 · 103 阅读 · 0 评论