![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
文章平均质量分 61
看山是山_Lau
技术改变世界,阅读塑造人生
展开
-
Github上1.1KFork的C++笔记
原文链接,如果觉得本文对你有所帮助,欢迎去原地址点个Star⭐。侵删。原创 2023-09-13 22:12:38 · 285 阅读 · 0 评论 -
数据类型与输出格式不一致时,附ASCII码表
【代码】数据类型与输出格式不一致时,附ASCII码表。原创 2023-03-11 20:15:50 · 115 阅读 · 0 评论 -
嵌入式相关开源项目、库、资料------持续更新中
本贴精心汇总了一些嵌入式相关资源,包括但不限于编程语言、单片机、开源项目、物联网、操作系统、Linux、计算机等资源。原创 2023-02-14 22:25:48 · 4000 阅读 · 3 评论 -
函数与文件结构
函数与文件结构原创 2022-12-23 22:46:36 · 285 阅读 · 0 评论 -
一文读懂指针与数组
一文读懂指针与数组原创 2022-12-23 22:43:55 · 116 阅读 · 0 评论 -
C语言编程技巧
C语言编程技巧,关键字,符号,预处理.原创 2022-12-23 22:41:19 · 691 阅读 · 0 评论 -
c/cpp常用头文件大全
C、C++常用头文件大全原创 2022-12-23 22:29:15 · 1254 阅读 · 0 评论 -
C++任意类型与字符串相互转换
C++字符串与任意类型相互转换。原创 2022-09-08 16:30:24 · 570 阅读 · 0 评论 -
C语言高级用法--函数指针:回调函数;转换表
函数指针最常见的两个用途:作为参数传递给另一个函数(回调函数)和转换表(jump table),本文将探索这两方面的一些技巧。原创 2022-06-27 22:22:53 · 350 阅读 · 0 评论 -
C++指针和引用
**复合类型**(compound type)是指基于其他类型定义的类型。C++语言有几种复合类型,诸如结构体、共用体、枚举等,本文将介绍其中的两种:引用和指针。原创 2022-05-29 17:19:42 · 878 阅读 · 0 评论 -
必知必会-CPP的23个Tips
0x01:extern关键字可以在任何地方使用,但变量只能在某个文件、函数或代码块中被定义一次。0x02:定义包含声明,但声明不包含定义。0x03:NULL:数据类型pointer作为全局变量,系统自动初始化为该值。0x04:在main()函数外为全局变量,函数内为局部变量。二者名称可以相同,但是在函数内,局部变量的值会覆盖全局变量的值。重名变量,作用域小的屏蔽作用域大的。0x05:当局部变量被定义时,系统不会对其初始化,您必须对其初始化。正确地初始化变量是一个良好的编程习惯,否则有时候程原创 2022-04-23 17:01:51 · 1125 阅读 · 0 评论 -
必知必会-C语言内存管理
内存管理衡量是否掌握C语言的两个标准,一:指针;二:内存管理。指针的相关内容欢迎查看历史文章,本文会介绍C语言内存管理的相关知识,其对于读者之后的编程生涯也会大有裨益。如果你有相关需求,就往下看吧。一.栈、堆和静态区对于程序员,一般来说,我们可以简单的理解为内存分为三个部分:静态区,栈,堆。很多书没有把把堆和栈解释清楚,导致初学者总是分不清楚。其实堆栈就是栈,而不是堆。堆的英文是 heap;栈的英文是 stack,也翻译为堆栈。堆和栈都有自己的特性,这里先不做讨论。再打个比方:一层教学楼,可能有原创 2022-04-05 17:41:59 · 1487 阅读 · 0 评论 -
必知必会--数组与指针二
指针与数组一四.指针数组与数组指针4.1指针数据和数组指针的内存布局初学者总是分不出指针数组与数组指针的区别。其实很好理解:指针数组:首先它是一个数组,数组的元素都是指针,数组占多少个字节由数组本身决定。它是“储存指针的数组”的简称。数组指针:首先它是一个指针,它指向一个数组。在 32 位系统下永远是占 4 个字节,至于它指向的数组占多少字节,不知道。它是“指向数组的指针”的简称。下面到底哪个是数组指针,哪个是指针数组呢:(A) int *p1[10];(B) int (*p2)原创 2022-04-04 17:39:27 · 1396 阅读 · 0 评论 -
必知必会系列-指针和数组
指针和数组读文章前思考三个问题:1.什么是指针?2.什么是数组?3.指针和数组之间有什么关系?一.指针1.1 指针的内存布局int *p;大家都知道这里定义了一个指针 p。但是 p 到底是什么东西呢?我们把 p 称为指针变量,p 里存储的内存地址处的内存称为 p 所指向的内存。指针变量 p 里存储的任何数据都将被当作地址来处理。我们可以简单的这么理解:一个基本的数据类型(包括结构体等自定义类型)加上*号就构成了一个指针类型的模子。这个模子的大小是一定的,与*号前面的数据类型无关。*号前面原创 2022-03-14 17:49:55 · 530 阅读 · 0 评论 -
必知必会-C语言关键字篇
关键字1.registerregister:这个关键字请求编译器尽可能的将变量存在 CPU 内部寄存器中而不是通过内存寻址访问以提高效率。注意是尽可能,不是绝对,因为一个CPU的寄存器的数量是有限的,不可能把这些变量都放入寄存器中。寄存器:数据从内存里拿出来先放到寄存器,然后 CPU 再从寄存器里读取数据来处理,处理完后同样把数据通过寄存器存放到内存里,CPU 不直接和内存打交道。为啥要这么麻烦啊?因为速度。寄存器其实就是一块一块小的存储空间,只不过其存取速度要比内存快多。近水楼台先得月嘛,它离原创 2022-02-26 14:41:59 · 633 阅读 · 0 评论 -
135. 分发糖果
class Solution {public: int candy(vector<int> &ratings) { if (ratings.size() == 0) return 0; if (ratings.size() == 1) { return 1; } vector<int> candy(ratings.size(), 1); f原创 2021-12-25 21:46:14 · 296 阅读 · 4 评论 -
力扣121题
class Solution {public: int maxProfit(vector<int>& prices) { if(prices.empty()) return 0; //直接利用一个循环,找到最小的价钱作为买入价,并找到在此买入价下的最大利润 int profit = 0; int min = prices[0]; for(int i = 1; i原创 2021-12-25 21:44:59 · 301 阅读 · 0 评论 -
力扣25. K 个一组翻转链表
class Solution {public: ListNode* reverseKGroup(ListNode* head, int k) { if (head == nullptr) return head; auto tail = head; for(int i = 0; i < k; ++i) //先让tail移动k个节点 { if(tail == nullptr) return he..原创 2021-12-25 21:43:16 · 154 阅读 · 0 评论 -
力扣92. 反转链表 II
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode() : val(0), next(nullptr) {} * ListNode(int x) : val(x), next(nullptr) {} * ListNode(int x, ListNode *next) : val(x), next(next)原创 2021-12-25 21:41:30 · 289 阅读 · 0 评论 -
C++类成员函数的重载、覆盖与隐藏
成员函数的重载、覆盖(override)与隐藏很容易混淆,C++程序员必须要搞清楚概念,否则错误将防不胜防。一.函数重载1.重载的原因:在 C++程序中,可以将语义、功能相似的几个函数用同一个名字表示,即函数重载。 这样便于记忆,提高了函数的易用性,这是 C++语言采用重载机制的一个理由。例如下面例子中的函数 EatBeef,EatFish,EatChicken可以用同一个函数名 Eat 表示,用不同类型的参数加以区别。void EatBeef(…); // 可以改为 void Eat(Beef原创 2021-12-19 13:55:32 · 631 阅读 · 0 评论 -
C++/C基础知识小测试
本试题仅用于考查C++/C基本知识,内容仅限于C++/C常用语法,不涉及算法和数据结构等其他学科原创 2021-12-12 11:37:47 · 1209 阅读 · 0 评论 -
C语言中关于switch() case语句
关于switch() case语句1)case 后面必须是一个整数,或者是结果为整数的表达式,但不能包含任何变量。请看下面的例子:1. case 10: printf("..."); break; //正确2. case 8 + 9: printf("..."); break; //正确3. case 'A': printf("..."); break; //**正确,字符和整数可以相互转换**4. case 'A' + 19: printf("..."); break; //正确,字符和整数可以原创 2021-03-11 17:31:17 · 3576 阅读 · 0 评论 -
C语言long类型的变量占用4字节or8字节
利用VS2019进行如下测试32位开发环境:64位开发环境:这里不论是32位还是64位,long类型都占用了4字节的长度。而指针类型的变量,32位是4字节;64位是8字节。欢迎评论交流。更多分享,欢迎扫码关注。...原创 2020-12-25 10:40:53 · 4082 阅读 · 2 评论 -
C++头文件;输入与输出;STL
1.头文件==#include<bits/stdc++.h> //一键包括所有#include<iostream> //必须要有的#include<stack> //用到栈#include<string> //定义字符串#include <algorithm> //用到reverse();sort()这样的函数==using namespace std; //必须要有2.输入与输出1.两个数 a b int a,b;原创 2020-10-19 19:39:08 · 967 阅读 · 0 评论 -
百度2021届嵌入式Linux软件研发工程师笔试真题
题目描述:牛牛和牛妹新买的房子需要铺上地毯,不过,由于是一个挖掘机户型,有一条很长的走廊,为这条走廊铺上地毯可谓是煞费脑经。假设这条走廊长为L,用下标1~L代表位置,牛牛总觉得在某个位置铺上一块地毯可以增加颜值,用样的,牛妹觉得在另一些位置铺上地毯也看了一增加颜值,假设两个人一有想法就会付诸行动,那么,在两人停手铺地毯之后,每个位置上各有几块地毯覆盖?输入状态:本题为多组测试数据,第一行输入一个正整数 T (1<=T<=1000),代表测试数据组。对于每组测试数据,输入两个整数L,n(原创 2020-10-19 10:53:51 · 487 阅读 · 0 评论 -
面试中常被问到的C语言基础知识
1.原码、反码和补码位(bit)是计算机中处理数据的最小单元,其值只能是0或1;字节(Byte)是计算机处理数据的基本单元,一个字节为8位;原码:用最高位表示符号位,其余位表示数值位的编码成为原码;其中正数的符号位为0,负数的符号位为1;正数的原码、反码、补码均相同;负数:负数的反码:把原码的符号位保持不变,数值位逐位取反;负数的补码:在反码的基础上加一。补码:主要为了CPU运算器在进行减法运算时避免借位而设计,整数类都以补码来存储。2.switch原创 2020-10-12 21:27:01 · 2990 阅读 · 0 评论 -
C语言语句YPR[0]=(BUF[1]<<8|BUF[2]),以及 >> 8 &0xFF如何理解?
C语言语句YPR[0]=(BUF[1]<<8|BUF[2])如何理解?这是一个赋值语句,把等式右边的值赋给左边;先来看左边是怎么运算的,由于移位运算符<<的优先级大于位运算符|,所以先计算BUF[1]左移八位,然后再或上BUF[2],或的操作可以理解为两个数相加;通俗理解的话可以举个列子,假设BUF[1]的值为0000 0001b(为方便描述,故用二进制表示) ,左移八位后变成10000 0000b ,BUF[2]的值为1 ,然后两者相加变为10000 0001 b这是算原创 2020-10-10 19:01:09 · 3993 阅读 · 4 评论