自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 收藏
  • 关注

原创 [C++笔记]二叉搜索树

【代码】[C++笔记]二叉搜索树。

2023-07-29 15:39:27 269

原创 [Linux笔记]gdb调试器常用指令

gcc/g++形成的可执行程序默认是release版的。若要生成debug版,应使用-g选项。如:gcc -o mytest test.c -g -std=c99可以看到debug版包含了调试信息:gdb 文件名补充:以下所有的查看指令都不会影响调试运行的执行流。

2023-07-23 13:32:27 182

原创 [Linux笔记]gcc/g++,动静态库,make/makefile/.PHONY

答案是:系统把这些函数实现都被做到名为 libc.so.6 的库文件中去了,在没有特别指定时,gcc 会到系统默认的搜索路径“/usr/lib”下进行查找,也就是链接到 libc.so.6 库函数中去,这样就能实现函数“printf”了,而这也就是链接的作用。我们的C程序中,并没有定义“printf”的函数实现,且在预编译中包含的“stdio.h”中也只有该函数的声明,而没有定义函数的实现,那么,是在哪里实“printf”函数的呢?.PHONY修饰的方法总是会被执行,被修饰的符号称为伪目标。

2023-07-21 12:30:42 178

原创 [Linux笔记]vim基础

vim本身不是像vs那样什么都能做的ide,只是单纯的编辑器。命令行输入vim 文件名,会以vim打开文件。若当前路径下尚无该名称的文件,则会在保存退出时创建该文件。在vim中操作,尽量不要用鼠标及其滚轮操作,而只用键盘控制。比如滚轮上翻可能只会翻出之前的命令行记录,而不是windows记事本那样翻到前文部分。

2023-07-17 20:54:22 543

原创 [Linux笔记]常见命令(持续施工)

打印当前所在路径。建议每次登录后,或长时间未操作时,进行操作前都先执行pwd以确认当前位置。

2023-07-16 22:29:48 212

原创 [C++笔记]list

【代码】[C++笔记]list。

2023-07-07 20:43:20 56

原创 [C++笔记]vector

string是负责管理字符类型的数组,而vector是负责管理任意类型的数组。string相比vector有太多冗余的接口,vector的设计相对更合理些。

2023-04-15 18:46:07 428 1

原创 [C++笔记]初步了解STL,string,迭代器

STL(standard template libaray-标准模板库):是C++标准库的重要组成部分,不仅是一个可复用的组件库,而且是一个包含数据结构与算法的软件框架。是一套功能强大的 C++ 模板类,提供了通用的模板类和函数,这些模板类和函数可以实现多种流行和常用的算法和数据结构,如向量、链表、队列、栈。STL以HP版为始祖,衍生出很多版本,其中P.J.版本被被Windows Visual C++采用,RW版本被C+ + Builder 采用,SGI版本被GCC(Linux)采用。

2023-04-07 20:29:49 412

原创 [C++笔记]模板初阶

编写与类型无关的通用代码,是代码复用的一种手段。模板是泛型编程的基础。

2023-03-27 02:48:27 599

原创 [C++笔记]动态内存管理(new与delete)

null

2023-03-25 01:04:05 233

原创 [数据结构笔记]常见排序算法

null

2023-02-14 21:07:05 124

原创 [数据结构笔记]二叉树初阶

null

2023-01-28 06:43:37 2479 1

原创 [C/Linux练习]进度条小程序

2023-01-15 08:52:23 354

原创 [数据结构笔记]栈与队列

[数据结构笔记]栈与队列

2022-12-16 09:52:29 83

原创 [Linux笔记]权限

如题

2022-12-02 05:29:30 161

原创 [数据结构笔记]顺序表与链表

2022-11-21 06:14:21 337

原创 [数据结构笔记]时间复杂度与空间复杂度

在计算机科学中,算法的时间复杂度是一个函数(数学上的),它定量描述了该算法的运行时间。一个算法执行所耗费的时间,在不同设备下经常会是不同的,因而不宜直接通过计时来描述算法耗费时间的程度。一个算法所花费的时间与其中语句的执行次数成正比,因此统计次数能更有效地描述算法耗费时间的程度,算法中的基本操作的执行次数,为算法的时间复杂度。即:找到某条基本语句与问题规模N之间的数学表达式,就是算出了该算法的时间复杂度。Func函数中++count的操作次数:F(N)=N+2*N+10。...

2022-08-29 16:36:38 142

原创 [C笔记]程序编译,环境,预处理,链接

标题就是摘要

2022-08-24 15:54:04 364

原创 [C笔记]文件操作

文件操作

2022-08-16 16:58:17 279

原创 [C笔记]内存区域,动态内存管理,柔性数组(C99)

变量和数组等在编译时开辟空间的方式无法很好地解决要到程序运行时才知道需要多少空间的情况,因此需要动态内存开辟。在内存中,,函数形参与局部变量位于栈区,而静态变量和全局变量位于静态区。...

2022-08-09 11:32:33 447

原创 [C笔记]自定义类型:结构体(声明,自引用,传参,内存对齐,位段),枚举,联合

标题就是摘要

2022-08-01 20:53:47 345

原创 [C笔记]常用字符串函数与内存操作函数

C语言中对字符和字符串的处理很常见,但C语言本身没有字符串类型,字符串通常放在常量字符串中或者字符数组中。-字符串常量适用于那些对它不做修改的字符串函数。-字符串函数头文件string.h.........

2022-07-31 05:07:34 198

原创 [C练习]模仿qsort实现通用类型的BubbleSort函数

【C练习】模仿qsort实现通用类型的BubbleSort函数。

2022-07-22 17:23:47 120

原创 [C笔记]qsort函数

qsort函数为库函数,可对任意元素类型的数组进行排序,排序所需的比较函数由使用者自定义并作为参数传给qsort函数。

2022-07-21 11:56:13 242

原创 [C笔记]指针进阶-数组与函数与指针

指针进阶内容,重要

2022-07-20 18:08:17 136

原创 [C++笔记]静态成员,友元函数与友元类,内部类

null

2022-07-04 10:22:36 125

原创 [C++练习]日期类

null

2022-05-29 13:10:08 203

原创 [C++笔记]默认成员函数:构造,析构,拷贝构造,赋值运算符重载(含运算符重载介绍)

翻修自之前的笔记。初版问题太多,已修正补充并重新排版。

2022-04-03 18:02:35 1290

原创 [C++笔记]this指针

null

2022-03-05 09:13:08 89

原创 [C++笔记]类及其封装,作用域,访问限定符,实例化,对象,类与对象的大小

null

2022-02-23 23:44:00 238

原创 [C++笔记]C++11中的auto,范围for,以及nullptr

null

2022-02-20 19:05:24 469

原创 [C++笔记]引用,内联

null

2022-02-04 20:21:59 454

原创 [C++笔记]缺省参数,函数重载

#define _CRT_SECURE_NO_WARNINGS 1#include<iostream>using namespace std;//缺省参数void DefaultParam(int a = 10,int b=20,int c=30) { //缺省值必须是常量或全局变量 cout << a << endl; cout << b << endl; cout << c << endl; cout

2022-01-29 20:45:42 610

原创 [C++笔记]命名空间,cin cout

#define _CRT_SECURE_NO_WARNINGS 1#include<iostream>//包含c++的输入输出流,相当于C的stdlib.h#include<stdlib.h>//using namespace std;//展开std, c++库的实现定义在一个叫std的命名空间中以减少命名冲突//↑不过这样做就等于std白隔离了,大项目视情况用另外两种展开/访问方式比较合适。//↑平时练习一般无所谓,随便展开//使用命名空间可以绕开命名冲突//同一工

2022-01-25 20:45:10 335

原创 [C练习]写一个函数,将字符串中的空格替换为%20

题目:要求写一个函数,将字符串中的空格替换为%20。样例: “abc defgx yz” 转换成 “abc%20defgx%20yz”#include<stdio.h>#include<stdlib.h>#include<string.h>void rep(char* arr1, char* arr2);int main(){ char arr1[] = "abc defgx yz"; char arr2[20];//输出用数组,按需设定大小 rep

2021-08-17 16:01:05 141

原创 [C练习]判断一个字符串是否为另外一个字符串旋转之后的字符串

题目:写一个函数,判断一个字符串是否为另外一个字符串旋转之后的字符串。例如:给定s1 =AABCD和s2 = BCDAA,返回1给定s1=abcd和s2=ACBD,返回0.AABCD左旋一个字符得到ABCDAAABCD左旋两个字符得到BCDAAAABCD右旋一个字符得到DAABC代码:#include <stdio.h>#include<stdlib.h>#include<string.h>#include<assert.h>void

2021-08-11 06:44:14 184

原创 [总结]简单总结整型与浮点型在内存中的存储

目录整型-原反补原码反码补码大小端浮点型-IEEE754整型-原反补原码原码是有符号整型最简单直接的编码方式,以8位二进制表示整型,最高位(从左向右第一位)为符号位。也就是说,有符号整型用7个比特位来表示大小,用1个比特位来表示正负。符号位为0表示正数,为1则表示负数。比如:+11的原码为00001011,-11的原码是10001011原码对人来说简单易懂,但负数的原码并不适合直接拿给加法器计算:1+(-1)=000000001+10000001=1000001010000010换算为1

2021-08-11 02:13:19 153

原创 [C练习]函数检测大小端

#include<stdio.h>#include<stdlib.h>int EndianCheck() { int a = 1; return *(char*)&a; //返回1为小端,返回0为大端}int main(){ printf("EndianCheck()返回%d,当前环境为:", EndianCheck()); if (EndianCheck() ==1){ printf("小端字节序\n"); } else if(EndianCh

2021-08-09 19:04:45 115

原创 [C]通过反汇编看函数栈帧

1.前言代码使用C语言,编译器为VS2017汇编、栈、寄存器这些概念严格来说都不是C语言的内容,但了解这些概念对于学习与工作百利而无一害。本文对这些概念只进行最低限度的介绍,不会详细讲解。*若编译器版本不同,反汇编结果通常也会有些不同,但基本规则是相通的。1.1基本概念:汇编、栈、寄存器本小节的概念与定义来自网络。 1【汇编语言】:汇编语言是二进制指令的文本形式,与指令是一一对应的关系。比如,加法指令00000011写成汇编语言就是 ADD。只要还原成二进制,汇编语言就可以被 CPU 直接执行

2021-08-07 16:35:27 432

原创 [C调试练习]程序死循环解释

题目:调试截图:分析:题目:VS开发环境调试下面的代码,解释下面代码的问题#include <stdio.h>int main(){ int i = 0; int arr[] = {1,2,3,4,5,6,7,8,9,10}; for(i=0; i<=12; i++) { arr[i] = 0; printf("wei,zaima\n"); } return 0;}调试截图:分析:原.

2021-08-03 13:15:21 313

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除