自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 VS报错无法解析的外部符号.....

我们在使用VS编译器编写C代码运行时提示:严重性 代码 说明 项目 文件 行 禁止显示状态错误 LNK2019 无法解析的外部符号 _main,函数 “int __cdecl invoke_main(void)” (?invoke_main@@YAHXZ) 中引用了该符号 StudyCProject E:\VisualStudioProjects\StudyCProject\StudyCProject\MSVCRTD.lib(exe_main.obj) 1有多种方法会造成此错误。 所有这些方法都涉及引用链接

2023-09-27 16:36:53 5085

原创 QT之SARibbonGalleryGroup类函数

在SARibbonGallery内部,可以使用多个SARibbonGalleryGroup来组织和显示QAction列表。通过添加和删除SARibbonGalleryGroup来组织QAction,并使用SARibbonGallery来显示它们,可以创建自定义的图库,以满足特定的用户需求和设计要求。ARibbonGalleryGroup类是SARibbonGallery内部的一个组件,它表示一个类别活动,包含一组QAction动作列表,用于向SARibbonGallery添加类别活动。

2023-05-25 20:24:30 311

原创 QT搭建ArcGis_pro Office式界面————SARibbon的布局思路

本文详细介绍基于Qt 通过开源项目SARibbon 搭建Arcgis_pro界面的方法,各个控件的实现,效果说明。

2023-04-07 17:54:04 1940 7

原创 面试常问【进程间通信】最详细解说

进程是如何通信的?通信的目的是什么?为什么需要进程间通信,一文带你深入了解。

2023-03-06 09:47:18 3121

原创 golang语言 map全方位介绍 【图文+代码】

系列文章目录提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章 Python 机器学习入门之pandas的使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录系列文章目录 前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基

2022-01-05 22:35:49 1611 26

原创 golang数据类型和各类型转换注意细节【图文+代码】

文章目录前言 一、整数类型 二、小数类型/浮点型 1.基本介绍 2.浮点型使用细节 三、字符类型 1.基本介绍 2.字符类型使用细节 总结 前言提示:以下是本篇文章正文内容,下面案例可供参考一、整数类型int 的其它类型的说明:在go中没有像c++那样char short lang double等类型了,用上面的来替换了1.整型的使用细节1) Golang 各整数类型分:有...

2022-01-03 19:31:07 1870 15

原创 const int *p 与 int *const p的区别 最方便理解的记忆方法

文章目录const int *p int const *p int *const p const int * const p 总结如果您对这几个有一定的了解,或者只是记忆模糊不清建议您直接看本文最后总结部分,相信对您有一个更好的理解记忆方式,如果您对此比较陌生,建议您从头观看,直观感受。强调:总结是精华本分。一、const int *p直接上代码这段代码会报错,那么为什么会报错,原因就是const封锁了*p *p是一个常量,所以他是不可以更改的。...

2021-11-03 23:55:43 5281 10

原创 计算机网络之运输层两协议之间的较量【UDP/TCP】

文章目录前言 一、运输层的功能 二、运输层的两个协议 1.两协议之间的区别 2.两协议之间的共同点 总结前言要搞清楚运输层是干什么的,那么就必须先了解一下计算机网络体系结构。应用层: 应用层是体系结构中的最高层。应用层的任务是通过应用进程间的交互来完成特定网络应用。应用层协议定义的是应用进程间通信和交互的规则。这里的进程就是指主机中正在运行的程序。对于不同的网络应用需要有不同的应用层协议。运输层: 运输层的任务就是...

2021-05-25 22:10:20 1730 30

原创 Linux-虚拟地址到物理内存之间的小秘密!!!【图文+代码】

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言 一、创建进程 二、使用步骤 1.引入库 2.读入数据 总结前言我们上一篇介绍到进程的概念,运行,管理,以及它的状态。那么我们这一篇就了解一下进程的创建。提示:以下是本篇文章正文内容,下面案例可供参考一、为什么创建进程?我们说过:进程就是运行起来的程序,程序运行起来需要被加载到内存中。对操作系统来说:管理程序的运行,就是将程序的运行过程描述起来,然后组织起来进行管...

2021-04-14 13:42:03 1224 11

原创 C++菱形继承中的那些事【超详细 图文+代码】

前言 一、什么是多继承 二、菱形继承 1.引入虚基类 2.引入虚基表 总结前言我们上一篇说了世间万物都有一个继承体制,或多或少子类继承了父类的某些特征,但大多都是单向继承,但是就有些特例他就是多继承,比如:我们从图片中就可以看到,两栖动物它既继承了水生动物的一部分特性,也继承了陆地动物的一些特性,那么我们的代码,会不会也会有这种多继承现象呢,我们一起来看一下。提示:以下是本篇文章正文内容,下面案例可供参考一、什么是多继承?1.单继承 我们来看...

2021-03-31 18:33:31 5778 19

原创 【C++】 学习继承这一篇就够啦!【图文+代码】

一篇带你了解继承。C++继承前言 一、继承的概念 1.继承定义 2.继承关系和访问限定符 3.基类和派生类对象赋值转换 4.继承中的作用域 5.派生类的默认成员函数 6.继承与友元 7.继承与静态成员 总结前言世间万物都会有一个继承体制,他就或多或少会继承父类的某些特征,比如人,动物,等等,那么我们的代码会不会也有这一特征呢,让我们一起来看看把提示:以下是本篇文章正文内容。一、继承继承(inheritance)机制是面向对...

2021-03-29 15:37:59 3997 15

原创 【超详细】八大排序算法的各项比较以及各自特点

千万不要错过这篇,不然你就亏大发了。八大排序,各显神通。前言 一、排序的概念 二、各算法特点 1.直接选择排序 2.堆排序 3.直接插入排序 4.希尔排序 5.冒泡排序 6.快速排序 7.归并排序 8.基数排序 总结前言排序是计算机程序设计中一个非常重要的操作,它将一个数据元素(或记录)的任意序列重新排列成一个按关键字有序的序列。在有序的序列中查找元素的效率很高,(例如,折半查找法的平均查找长度为log2(n+1)−1log2(n+1...

2021-03-27 15:41:32 28364 26

原创 结构体内存对齐

内存对齐前言 一、数据类型 二、结构体常规认知 1.什么是结构体 2.什么情况下会用到结构体? 3.结构体内存对齐 前言在C语言中,除了最常见用数据类型,字符类型(char)、整数类型(short、int、long )、实型(float、double),,,,,,最常见也是最经典的还有一种数据类型,那就是结构体。那么结构体的大小该怎去计算呢?首先先得知道不同数据类型的大小一、数据类型有哪些?char //字符数据类型sho...

2021-03-20 02:58:35 722 2

原创 【linux】 进程概念一 【图文+代码】

进程概念前言一、冯诺依曼体系二、操作系统1.操作系统是什么?2.如何管理三、进程1.进程概念学习内容:学习时间:学习产出:前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言进程是操作系统的概念,每当执行一个程序时,对于操作系统来讲就创建了一个进程。进程是一个动态的概念,它是程序执行的过程,包括创建、调度和消亡。在这个过程中伴随着资源的分配和释放。提示:以下是本篇文章正文内容,下面案例可供参考一、冯诺依曼体系我们常见的计算机,如笔记本。我们不常见的计算机,如服务器,大部分都

2021-03-14 20:15:03 1030 3

原创 【c语言】 指针详解 【图文+代码】

指针前言一、指针是什么?1.1 认识指针1.2 变量1.3 变量放在哪?1.4 指针的本质1.5 解引用二、指针类型2.1指针有类型吗?2.2指针类型的意义是什么?三. 野指针3.1什么是野指针3.2野指针成因3.2.1指针未初始化3.2.2 指针越界访问3.2.3 指针指向的空间释放了3.3如何避免野指针四、 指针和数组4.1数组名是什么4.2数组和指针的关系4.3数组和指针的关系五、 二级指针学习内容:学习时间:学习产出:一级目录二级目录三级目录功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样

2021-03-10 19:11:53 6665 5

原创 超简单的算法 配图详解 实现面试题 02.03. 删除中间节点

实现一种算法,删除单向链表中间的某个节点(即不是第一个或最后一个节点),假定你只能访问该节点。示例:输入:单向链表a->b->c->d->e->f中的节点c结果:不返回任何数据,但该链表变为a->b->d->e->f/** * Definition for singly-linked list. * struct ListNode { * int val; * struct ListNode *next; * };

2020-11-18 16:02:11 162 1

原创 LeetCode 203. 移除链表元素

移除链表元素删除链表中等于给定值 val 的所有节点。示例:输入: 1->2->6->3->4->5->6, val = 6输出: 1->2->3->4->5/** * Definition for singly-linked list. * struct ListNode { * int val; * struct ListNode *next; * }; */struct ListNode* re.

2020-11-17 18:12:40 110

原创 数据结构 简说栈的概念结构及实现

1.1栈的概念及结构栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。压栈:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。出栈:栈的删除操作叫做出栈。出数据也在栈顶1.2栈的实现栈的实现一般可以使用数组或者链表实现,相对而言数组的结构实现更优一些。因为数组在尾上插入数据的代价比较小实现栈#ifndef _STACK_H_#define

2020-11-12 22:13:05 135 1

原创 双指针删除排序数组的数

Leetcode 删除排序数组中的重复项给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。示例 1:给定数组 nums = [1,1,2],函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。你不需要考虑数组中超出新长度后面的元素。示例 2:给定 nums = [0,0,1,1,1,2,2,3,3,4],函数应.

2020-11-10 19:58:12 129

原创 合并两个有序链表 递归实现

合并两个有序链表将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4/*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/c语言实现 递归方.

2020-11-07 16:25:20 175

原创 删除排序链表中的重复元素 C语言实现 超简单的递归方法

删除排序链表中的重复元素给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。示例 1:输入 : 1->1->2输出 : 1->2示例 2 :输入 : 1->1->2->3->3输出 : 1->2->3 * Definition for singly-linked list. * struct ListNode { * int val; * struct ListNode *nex.

2020-11-06 22:05:48 519

原创 简单折半查找 Leetcode --35搜索插入位置

搜索插入位置给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。示例 1:输入 : [1, 3, 5, 6], 5输出 : 2示例 2 :输入 : [1, 3, 5, 6], 2输出 : 1示例 3 :输入 : [1, 3, 5, 6], 7输出 : 4示例 4 :输入 : [1, 3, 5, 6], 0输出 : 0//用折半查找提高效率int searchInsert(int*

2020-11-04 00:53:09 166

原创 LeetCode 整数反转 考虑溢出 函数实现

定义sum时要注意其取值范围要比-2的32次方到2的32次方减1广,所以选用刚好的long 下面是代码int reverse(int x){ int pop; long sum = 0; while (x != 0) { pop = x % 10; sum = sum * 10 + pop; x = x / 10; //反转整数 } if ((int)sum != sum) // 将得到的long类型的sum和int类型性的sum进

2020-10-29 20:00:09 107

原创 LeetCode两数之和 c语言实现

LeetCode 两数之和`int* twoSum(int* nums, int numsSize, int target, int* returnSize){ for (int i = 0; i<numsSize; i++) { for (int j = i + 1; j<numsSize; j++) { if (nums[i] + nums[j] == target) { int *ret = malloc(sizeof(int*)* 2);// 开辟两

2020-10-29 19:32:13 196

原创 求一个整数在内存中的二进制1的个数。

求一个整数在内存中的二进制1的个数。第一种方法一个循环32次 让这个数每右移1位 在&上1 来计算二进制1的个数#include <stdio.h>int find(int n){ int count = 0; int i = 0; for (i = 0; i < 32; i++) { if ((n >> i & 1) == 1) { count++; } } printf("%d", count);}int m

2020-10-26 20:41:43 97

原创 求二进制中不同位的个数 输入例子 1999 2299 输出为7

#include <stdio.h>int Numberof1(int a, int b){ int count = 0; int n = a^b; // 找不同位的1 while (n) { n = n&(n - 1); count++; //计算不同位1的个数 } return count;}int main(){ int a = 0; int b = 0; scanf("%d%d", &a, &b); int ret = N

2020-10-26 20:30:38 178

原创 写一个函数,判断一个字符串是否是另外一个字符串旋转之后的字符串 例如 s1=AABCD和s2=BBDAA 返回真 或1 s1=abcd和s2=ABCD 返回假 或0

写一个函数,判断一个字符串是否是另外一个字符串旋转之后的字符串//例如 s1=AABCD和s2=BBDAA 返回真 或1// s1=abcd和s2=ABCD 返回假 或0用开辟两倍空间 通过拷贝 链接 查找方法实现malloc 开辟空间strcpy 字符串拷贝strcat 字符串链接strstr 字符串查找#include <stdio.h>#include <stdbool.h>#include <assert.h>bool IsRota

2020-10-23 17:24:39 458

原创 实现一个函数 可以左旋字符串中K个字符 ABCD左旋一个字符得到BCDA ABCD左旋两个字符得到CDAB

// 实现一个函数 可以左旋字符串中K个字符//如 ABCD左旋一个字符得到BCDA// ABCD左旋两个字符得到CDAB第一种方法 开辟一个相同大小的空间 通过拷贝 链接完成#include <stdio.h>#include <assert.h>#include <string.h>void LeftRound(char*str, int n){ assert(str != NULL); //2 移动的步长 int len = st

2020-10-23 16:40:05 369

原创 模拟实现atoi c语言实现

atoi库函数#include <stdio.h>int main(){ char*str = "4194";//字符串 int res = atoi(str);// 库函数 把一个字符转转换成一个整形 printf("res=%d\n", res); return 0;}atoi 是把一个字符串转换成一个整形下面模拟实现一下 atoi#include <stdio.h>#include <assert.h>#include <stdli

2020-10-22 22:29:27 184

原创 有一个二维数组,在数组的每行从左到右是递增的,每列从上到下是递增的 在这样的数组中查找一个数字是否存在。

//暴力解法 //杨氏数组// 1 3 5 7// 2 4 6 8// 3 5 7 9// 7 8 9 10#include <stdio.h>#include <stdbool.h>#define ROW 5#define COL 5bool FindNum(int ar[ROW][COL], int key){ //O(N^2) for (int i = 0; i < ROW; i++) { for (int j = 0; j < CO

2020-10-22 22:19:57 244

原创 完成猜数字游戏。

#include <stdio.h>#include <stdlib.h>#include <time.h>1.游戏主菜单void menu(){ printf("***********************\n"); printf("********猜字游戏*******\n"); printf("*********1.play*******...

2020-03-06 23:47:04 212

原创 求出0~999999之间的所有“水仙花数”并输出。

求出0~999999之间的所有“水仙花数”并输出。/*“水仙花数”是指一个三位数,其各位数字的立方和确好等于该数本身,如;153=13+53+3^3?,则153是一个“水仙花数”。1234=1^4 + 2^4 + 3^4 +4^4/*在数论中,水仙花数(Narcissistic number)也称为自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),是指一N位...

2020-03-05 11:33:48 168

原创 2. 不允许创建临时变量,交换两个数的内容。

1.按位异或法,#include <stdio.h>int main(){int a, b;printf(“请输入a和b\n”);scanf("%d\n%d", &a, &b);a = a^b;b = a^b;a = a^b;printf(“交换后%d %d”, a, b);return 0;}2.两数相加法#include <stdi...

2020-03-02 20:28:17 78

原创 找出3~1000中的全部素数

找出3~1000中的全部素数分析:1, 素数是除一和它本身之外不能被任何一个整数所整除的自然数。2, 判断某数 i 是否为素数的一个简单办法是用 2 3 4…,i-1 这些数据逐个去除i,只要被其中一个整数整除了,则i就不是素数。数学上对于自然数i只需用2 3 4…,sqrt(i)测试。3,程序`...

2019-10-24 13:09:33 3012

原创 判断某一年是否是闰年 【C语言】

1 输入年号,判断它是否是闰年。分析:如果此年号能被400整除,则它是闰年,如果此年号能被4整除,而不能被100整除,则也是闰年,否则不是闰年。程序:#include <stdio.h>void main(){unsigned int year, leap;printf(“Enter year:”);scanf("%d", &year);if (year %...

2019-10-21 22:52:41 1873 1

空空如也

空空如也

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

TA关注的人

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