c/c++

huangyuchi.12 小时前
linux·服务器·网络·网络协议·http·c/c++
【Linux 网络】理解并应用应用层协议:HTTP(附简单HTTP服务器C++代码)前言:上文我们学习到了什么是守护进程以及其原理【Linux网络】深入理解守护进程(Daemon)及其实现原理-CSDN博客
huangyuchi.4 天前
linux·运维·服务器·c/c++·守护进程·会话·进程组
【Linux网络】深入理解守护进程(Daemon)及其实现原理前言:上文我们讲到了,如何通过定制协议来制作网络版本的计算器【Linux 网络】基于TCP的Socket编程:通过协议定制,实现网络计算器-CSDN博客
好评1248 天前
开发语言·c++·内存管理·c/c++
C/C++ 内存管理:摆脱野指针和内存泄漏内存问题是 C/C++ 程序员的“职业噩梦”:写着写着就崩,调半天才发现是少了一行 delete;改个数组大小,realloc 用错又炸了;看到 placement new 直接跳过。其实,大部分坑都来自同一个根源——你没真正搞清“谁在什么地方,谁负责回收”。这篇文章就是一步步把这件事讲透,从内存布局到动态分配,再到 C++ 特有的内存机制,帮你把脑子里的那张“内存地图”补完整。
阿捏利11 天前
c/c++·linux编程·elf文件
详解ELF文件(三)程序头表程序头表(Program Header Table)是ELF文件中描述段(segments)如何映射到内存中的关键结构。它在程序加载和执行过程中起着至关重要的作用。
吃西瓜的星星11 天前
activemq·openssl·c/c++
从0开始完成ActiveMQ-cpp在windows_x86平台的编译(从编译openssl开始)由于需要将一个项目从linux迁移到windows系统,在互联网没有找到【免费】且【免登录】的x64资源,openssl也已经找不到1.1.1w版本的下载资源了,所以我搭建了虚拟机环境,从编译openssl开始完成activemq的项目编译。
_OP_CHEN12 天前
linux·运维·c/c++·linux开发工具·调试器·gdb/cgdb
【Linux系统编程】(十)从入门到精通!Linux 调试器 gdb/cgdb 超全使用指南,程序员必备调试神器前言一、gdb 调试基础:从环境准备到核心概念1.1 为什么需要 gdb 调试?1.2 gdb 调试的前提:编译调试版本
橘颂TA21 天前
算法·c/c++·结构与算法
【剑斩OFFER】算法的暴力美学——判定字符是否唯一我们可以用位图的思想来解决这道题:找一个32位比特位的数字,这32个比特位用来表示字符是否存在,例如:000000.....0000 假设有个字符 a,如果位图的第 a - a 个位置,也就是第 0 个位置是否为 0 ,如果是0,就把这个位置改成1,表示 a 这个字符是存在的,假设再出现出现一个字 a ,我们也还是判断第 a - ’a' 这个位置是否为0,此时是不为0,所以我们返回 false ,因为字符重复了。
橘颂TA25 天前
算法·c/c++·结构与算法
【剑斩OFFER】算法的暴力美学——矩阵区域和我们一看题目就知道使用二维数组的前缀和来解决这道题目。所谓二维数组的前缀和就是某个二维数组某个区域的和:https://blog.csdn.net/2403_84958571/article/details/154848877?spm=1011.2415.3001.10575&sharefrom=mp_manage_link
橘颂TA1 个月前
算法·c/c++·结构与算法
【剑斩OFFER】算法的暴力美学——二维前缀和一般来说我们遍历数组来进行求和,但是这种时间复杂度太高了:假设我们查找q次区域内和,最差的情况下我们要遍历完整个数组,所以我们的时间复杂度为:O(q * n * n);
橘颂TA1 个月前
数据结构·算法·力扣·c/c++
【剑斩OFFER】算法的暴力美学——寻找峰值这道题和山脉数组的蜂顶索引的解法几乎一样,只不过除了left 和 right 的取值不同罢了,因为在这道题目中有些特殊的例子如【 2,1】 返回0,一般来说有峰顶的数组的数字至少要三,所以这里我们可以把这到题目看成是求这个数组里面的最大值,有因为假设有两个峰顶,当我们的中间落在峰顶的旁边时,我们只要求这个峰顶就行,因为题目说只要求其中一个就行不是吗?
橘颂TA1 个月前
算法·leetcode·职场和发展·c/c++
【剑斩OFFER】算法的暴力美学——山脉数组的蜂顶索引首先我们我们观察一下数组里面的数字的排列的规律:在没遇到蜂顶元素时,前面的数据的是依次变大的,而蜂顶的元素后面的数字是依次递减的,我们可以把蜂顶的元素归于这其中的一类,故而如上图一样。
橘颂TA1 个月前
数据结构·算法·leetcode·c/c++
【剑斩OFFER】算法的暴力美学——点名当我们看到这道题目时,我们一般是直接从题目给出的数组来找这些数字的规律,题目给出的数字的除了这些数字是逐渐递增的,就没了。所以我们不防从把数组的下标写出来,此时我们可以看到数组的数字和下标相等时,代码没有数字缺少,反之就是缺少一个数字;从数组的下标结合题目给出的数组来看,只要找缺少数字的那小部分的数组的最左边就是缺少的那个数字,当然缺少的不是上面绿色部分的8而是他的下标7。
huangyuchi.1 个月前
linux·网络·udp·网络通信·c/c++·socket编程·简单聊天室
【Linux网络】基于UDP的Socket编程,实现简单聊天室前言:上文我们讲到了,基于UDP的Dict Server的Socket编程。【Linux网络】Socket编程实战,基于UDP协议的Dict Server-CSDN博客
阿源-1 个月前
嵌入式·c/c++
C语言编译过程 & ELF文件加载过程解析bin 文件通常用于嵌入式裸机程序的烧录,elf 可执行文件通常运行在操作系统之上。bin 是扁平的二进制文件,没有任何说明,它假设加载它的环境(如嵌入式引导程序,BootRom)已经预先知道了代码存放的地址,代码的入口,数据段,代码段的地址。大家如果烧录过嵌入式裸机程序应该有所体会。
_OP_CHEN1 个月前
电赛·c/c++·嵌入式开发·瑞萨mcu·声源定位·嵌入式应用·嵌赛
基于瑞萨 RA6M5 开发板的声源定位系统设计与实现前言一、项目概述1.1 项目背景与意义1.2 核心功能与技术指标1.2.1 基础功能1.2.2 扩展功能
阿源-1 个月前
嵌入式·c/c++
嵌入式面试中常见的一些编程题目注:本文只是代码实现,并没有深入讲解实现原理,大家可以看一下主要会考什么,然后再具体针对性了解原理,也更有利于理解。
计算衎1 个月前
开发语言·elf·gcc·c/c++·a2l
.c .o .a .elf .a2l hex map 这些后缀文件的互相之间的联系和作用.a 文件 —— 在 C/C++、ECU、嵌入式开发等领域都经常出现,但它的含义和作用要分清楚。 我给你讲清楚它在不同场景下的含义(尤其是和 .elf、.a2l、.o 的关系)。
橘颂TA1 个月前
算法·leetcode·面试·职场和发展·c/c++
【剑斩OFFER】算法的暴力美学——二分查找从题目的要求我们可以看出这道题是有二段性的性质的,所谓的二段性:在一段区间内根据数据的规律可以把这个区间分为两个区间;所以我们使用二分查找算法来解决这道题:
橘颂TA1 个月前
算法·c/c++·就业
【剑斩OFFER】算法的暴力美学——最小覆盖字串思路:滑动窗口 + 双哈希表我们可以统计 t 中每个字母的种类,不是个数,当我们遍历的 s 字符串时,我们也要定义一个 count 来记录符合 t 的有效字符,当 hash_s[ A ] == hash_t[ A ] ,count++,当 count == t 中每个字母的种类时,此时就是符合要求的字符串,但是我们要长度最小的字符串,所以我们还要定义两个变量:begin:有效字符串的起始下标,minlen :最小的有效字符串的个数;当 count == t 中每个字母的种类时,我们就要更新 begin 和
橘颂TA1 个月前
数据结构·算法·c/c++
【剑斩OFFER】算法的暴力美学——串联所有单词的字串我们可以看上面这个例子,我们记录s数组每个字母的个数,假设s数组在一段区间内的a、b、c的个数都为1,而和我们目标数组word的每个字母的个数相同,那么无论s数组的这段区间的a、b、c字母怎么排列都是我们目标的数组。