
C语言
文章平均质量分 81
兰舟千帆
分享开源实用的it技术
展开
-
指针与数组的复杂纠葛
指针可以配合数组干点什么事情呢?我们定义的指针变量可以存放地址,那就可以存放数组的地址啊!一个简单的运用就拿这一个说明我们这边的target指针是指向数组的,明白了说也就是数组的首地址,就是字符I的首地址,初始化是这样,当我们给指针进行++的时候就会依次指向第二个以至于往后。取*号就是取地址处的值,ok,说明白了。根本还有要理解指针是怎样指向的,以及怎样指向数组,这样就不会被反复套娃。你看指向二维数组,我们这边形象化一下,你再理解一下数组名代表了什么?打印输出数组名就会得到数组的首地址,也就是第一个原创 2022-07-13 10:37:24 · 394 阅读 · 0 评论 -
数组的理解与操作
普通的一维数组也就没什么太大的区别了,要说区别话,也可能只是类型的问题。(1)初始化一维数组一写可以尝试的初始化,这里就举例数值型和字符型(2)初始化二维数组我们还是以数值型和字符型举例2:给数组赋值谈到给数组赋值,在一些老版本说明中,比如一维数组是必须要有常量来规定初始化的数组的大小的,就算是二维数组也要至少指定列。但是c语言版本c99后好像是可以动态赋值了,意思是你可以定义一个n,然后int[n],n需要输入即可,但是在我的版本里面这是万万不行的。我们还是按照常规的方法给数组赋值,举一个给整型原创 2022-07-13 10:35:30 · 466 阅读 · 0 评论 -
指针的理解与操作
指针是什么?以及指针地址的概念?指针就是地址,地址就是指针。指针变量可用于存放地址。将指针的等同于指针变量是不严格的说法,指针并不是存放地址,指针变量才可以存放地址。我们从概念上区分。但是可能会通常会把指针变量也简化称之为指针了,但是我们需要知道,实际上并不等同。然后我们简单写代码也可以验证这个说法这边的指针大家在代码中就理解为指针变量就可,这样严格一些就不会弄混。我们定义一个指针变量,既然是一个变量,那肯定需要空间,或者叫内存空间,既然是占用了内存空间,那必然会有地址,既然是有地址,我们必然可以定义原创 2022-07-13 10:33:50 · 519 阅读 · 0 评论 -
c语言指针与数组的深入理解
引言:本篇再一次写到指针,学过c语言的都知道,指针是初学c语言时候遇到的一个比较难搞的知识点。你尽管可以想的简单,但是其实如果去用的话,没有一个更加深入的理解,那么后续的学习到数据结构就会艰难无比。指针?c语言的灵魂所在。本篇还是会结合数组来讲,当指针和数据结合起来的时候就会变得奇妙无比。提高一点点的难度,记得第一次也写过c语言的指针,只不过相对简单。第一篇c语言指针的链接如下深入理解c语言指针与数组c语言指针与素组一: 指针的理解与操作1:指针与指针变量?2:二级指针,多级指针,指向指针的指针?指针原创 2021-12-23 20:03:13 · 1800 阅读 · 3 评论 -
深入理解C语言结构体(数据结构基础)
引言:首先我们怎样认识结构体?结构体在c语言基础以及数据结构中的地位是什么?可以说,结构体作为了一种中间比较重要的桥梁基础,是从基础的C语法过渡到C数据结构必不可少的一种重要数据结构。以及配合指针,成就C语言的灵魂所在。深入理解C语言结构体一:结构体定义与初始化1:结构体是什么?它的特点?<1>相对于数组存储结构的区别?<2>结构体定义(常规)<3>结构体初始化(常规)<3>typedef关键字对结构体的改变2:引用结构体变量的成员属性<1>在主原创 2022-01-10 12:00:01 · 1896 阅读 · 25 评论 -
顺序表的基本建立,以及增删改查的相关操作(c语言描述之顺序表)
c语言描述之顺序表一: 顺序表是什么二:顺序表与链表的区别三: 顺序表的代码实现操作一: 顺序表是什么在c语言描述的数据结构里,顺序表是一种线性存储结构。线性存取结构又是什么?我们可以这样理解,线性存取就是将一串具有相同特征的数据用一根线串接起来,然后再放到我们的存储之中。当然,数据结构都是抽象出来的概念,但是这种抽象的理解方式也就掩盖了底层的复杂,也就方便我们去操作内存。二:顺序表与链表的区别顺序表是将元素放到一块连续的内存存取空间的。在存取元素数据之前,需要申请一块足够大的内存空间,数据原创 2021-12-05 19:38:35 · 1753 阅读 · 0 评论 -
单链表的静态建立以及动态链表建立(红芯书院的研学)
有关链表(第六阶段笔记-星期一记录)在csdn写过链表,当时没有熟悉markdown的语法,所以排版很糟糕,虽然排版目前也不怎么样,但是看还是可以的。很用心去研究链表了。我将我的思想写下来。结点这个词组可能写的不对,还希望原谅,明白意思就好。结构体指针通过动态内存申请,会转变为结构体变量,你理解了吗?如果不对,请指教。当然啦,结构体的理解是学号链表的前提。众所周知,链表这种数据结构在数据结构与算法中的地位是极其重要的。我拼了也要把它搞懂。1:先总结一下如何创建静态链表显然这个没有任何难度,所谓原创 2021-06-14 15:52:07 · 997 阅读 · 5 评论 -
数字金字塔(PTA)
原题如下:练习5-3 数字金字塔 (15 分)本题要求实现函数输出n行数字金字塔。函数接口定义:void pyramid( int n );其中n是用户传入的参数,为[1, 9]的正整数。要求函数按照如样例所示的格式打印出n行数字金字塔。注意每个数字后面跟一个空格。裁判测试程序样例:#include <stdio.h>void pyramid( int n );int main(){int n;scanf("%d", &n);pyramid(n);retur原创 2021-02-08 20:35:56 · 15292 阅读 · 5 评论 -
(斐波那契数列)使用函数输出指定范围内Fibonacc的数(PTA)
题目要求:本题要求实现一个计算Fibonacci数的简单函数,并利用其实现另一个函数,输出两正整数m和n(0<m≤n≤10000)之间的所有Fibonacci数。所谓Fibonacci数列就是满足任一项数字是前两项的和(最开始两项均定义为1)的数列。函数接口定义:int fib( int n );void PrintFN( int m, int n );其中函数fib须返回第n项Fibonacci数;函数PrintFN要在一行中输出给定范围[m, n]内的所有Fibonacci数,相邻数.原创 2021-02-07 13:18:27 · 10535 阅读 · 9 评论 -
树的基本操作
数据结构之树树的概念树是什么树的表示树的相关术语二叉树二叉树的定义二叉树的性质:二叉树的存储顺序存储树的概念树是什么众所周知,树在生活中无处不在。大自然中的树各式各样。而我们在数据结构中所探讨的与此有相似之处,又与此有莫大的不同。我们数据结构吗,要从树这种结构说起。树的定义:树又称tree,它是个结点的有限集。空树:当tree为空时称为空树树可以只有一个根结点我们数据结构的树根是朝上的除根结点外,其余结点有且仅有一个前驱。T中个结点可以有0个或者多个后继什么是前驱?像图中,A原创 2020-11-20 19:49:35 · 803 阅读 · 0 评论 -
c语言指针的有关总结
指针指针的概念1:对内存的理解2:地址(重点)指针定义与指针有关的运用1:c语言动态内存管理 内存泄漏?指针的概念1:对内存的理解这是我们计算机的内存条。这当然是我们的物理内存这是我们的虚拟内存像我们可以写程序来操纵计算机内存这样子。或者我们可以这样认为,物理内存是可以看得见,摸得着的,而虚拟内存反之。有关对虚拟内存的更深的认识点击这里虚拟内存计算机所有的程序都需要内存来执行。2:地址在计算机中,内存是以字节为单位的存储空间,每个字节都有他自己的一个编号,这个编号就被称为内存地址。内存原创 2020-09-07 22:18:51 · 11093 阅读 · 40 评论