- 博客(510)
- 收藏
- 关注
原创 C语言经典算法之k最近邻(K-Nearest Neighbor, KNN)算法
k最近邻(K-Nearest Neighbor, KNN)算法是一种基于实例的学习方法,主要用于分类和回归问题。在机器学习中,它不预先假设数据分布模型,而是直接存储训练样本,并在预测阶段根据新样本与已有训练样本之间的相似度进行决策。
2024-02-11 09:26:03 3028 67
原创 C语言与动态加载库技术:编写与使用动态链接库(.so/.dll)、插件系统设计(三)
动态加载库技术不仅是当前软件开发不可或缺的一部分,也是未来技术创新的重要基石。随着技术的不断演进,C语言与动态库的结合将继续赋能新的应用领域,激发无限可能。
2024-05-01 10:11:37 742 15
原创 C语言与动态加载库技术:编写与使用动态链接库(.so/.dll)、插件系统设计(二)
在现代软件开发中,动态链接库(DLLs或SO文件)是提高代码复用性和模块化的重要手段。它们允许开发者将常用功能封装起来,在运行时被应用程序加载和调用,而无需在编译时静态链接到二进制文件中。下面我们将详细介绍动态链接库的使用,以C语言为例,并着重讲解在Linux环境下的实践。
2024-05-01 10:06:58 817 1
原创 C语言与动态加载库技术:编写与使用动态链接库(.so/.dll)、插件系统设计(一)
动态加载库技术,又称为动态链接库技术,是现代软件开发中的一个重要组成部分。它允许程序在运行时动态地加载所需的库文件,而不是在编译时静态地链接到可执行文件中。这一机制为软件带来了诸多优势,包括但不限于节省内存、便于更新和升级、增强模块化设计以及支持跨平台兼容性。动态库文件在Windows系统中通常以.dll结尾,在UNIX及类UNIX系统(如Linux)中则以.so(共享对象)为扩展名。
2024-05-01 10:00:05 876 1
翻译 Java 新闻综述:WildFly 32、建议针对 JDK 23、Hibernate 6.5、JobRunr 的 JEP 7.1
本周 2024 年 4 月 22 日的 Java 综述重点介绍了以下新闻:WildFly 32 的发布; JEP 476,模块导入声明(预览版),JEP 474,ZGC:默认分代模式,以及 JEP 467,Markdown 文档注释,建议针对 JDK 23; 休眠 ORM 6.5; 和JobRunr 7.1.
2024-04-30 10:05:55 115 10
原创 C语言与内存管理技术:内存池、 slab allocator、jemalloc等内存分配器实现(二)
在Linux内核的内存管理系统中,Slab Allocator扮演着至关重要的角色,旨在解决小对象分配的效率问题。传统的伙伴系统(Buddy Allocator)虽然能够高效地管理大块内存,但对于频繁申请和释放的小块内存来说,容易引发大量的内存碎片,并且每次分配和释放操作的开销较大。Slab Allocator正是为了克服这一挑战而设计的。
2024-04-30 10:02:24 664 2
原创 C语言与内存管理技术:内存池、 slab allocator、jemalloc等内存分配器实现(一)
C语言自问世以来,一直是系统编程领域的中流砥柱。它凭借其底层访问能力、高效执行以及广泛的操作系统支持,成为操作系统内核、驱动程序、高性能服务器及嵌入式系统开发的首选语言。在系统编程中,C语言的内存管理扮演着核心角色,它允许程序员直接控制内存的分配与释放,这是实现高性能和灵活性的关键。
2024-04-30 09:55:29 1117 1
翻译 Meta 向第三方共享其混合现实 Meta Horizon 操作系统
向第三方硬件制造商开放为其 Meta Quest 设备提供支持的操作系统, Meta 旨在创建更大的生态系统,让开发者更轻松地为更多受众创建应用程序.
2024-04-29 10:16:53 69 7
原创 C语言与跨平台开发工具链:Clang、LLVM的使用与自定义编译流程(二)
Clang与LLVM不仅在当前是C语言跨平台开发的强大工具,其未来的发展潜力也为推动软件工程的进步提供了无限可能。鼓励开发者积极拥抱这一技术栈,探索并贡献于这个充满活力的开源社区。
2024-04-29 10:14:43 763 1
原创 C语言与跨平台开发工具链:Clang、LLVM的使用与自定义编译流程(一)
C语言,作为编程界的常青树,历经数十年依旧保持着其在系统编程、嵌入式开发及高性能计算领域的核心地位。其简洁的语法、高效的执行速度和对底层硬件的直接操控能力,使其成为跨平台软件开发中的重要基石。然而,跨平台开发并非没有挑战,不同操作系统间的差异,如文件系统路径分隔符、字节序、系统调用接口等,都可能成为阻碍代码直接移植的障碍。此外,硬件架构的多样性也要求开发者在内存管理、类型转换、宏定义等方面采取灵活且兼容的策略,以确保代码能够在多种平台上稳定运行。
2024-04-29 10:08:22 1390
原创 C语言与系统调用编程:系统调用原理、Linux系统调用接口与安全考量(二)
鉴于技术环境的快速演变,新的安全威胁和系统调用特性不断出现,持续学习和紧跟系统调用相关的最新安全动态是每个Linux平台开发者不可或缺的能力。这包括关注官方安全公告、阅读最新的安全研究报告、参与技术社区的讨论,以及定期回顾和升级现有的系统调用使用策略。总之,深入理解系统调用、注重安全实践,并保持学习态度,是开发既安全又高效的Linux应用程序的关键。
2024-04-29 09:57:34 755
原创 C语言与系统调用编程:系统调用原理、Linux系统调用接口与安全考量(一)
C语言,作为一门面向过程的编程语言,自其诞生以来,就以其简洁、高效和灵活性在系统编程领域占据了举足轻重的地位。其直接的内存操作能力、对底层硬件的直接访问特性,使得C语言成为编写操作系统、设备驱动、系统工具和嵌入式系统等底层软件的首选语言。在这类开发场景中,C语言与系统调用之间存在着密不可分的联系。系统调用作为用户空间程序与操作系统内核之间的桥梁,允许用户程序请求操作系统提供的服务,如文件操作、进程管理、内存管理等,而这些服务的接口往往通过C语言函数库的形式提供给开发者,使得系统调用的使用更加便捷和直观。
2024-04-29 09:54:13 1283
翻译 Devnexus 2024 庆祝 Java 开发者大会 20 周年
庆祝成立 20 周年, 德夫内克苏斯 2024 于2024年4月9日至11日在 乔治亚世界会议中心 在佐治亚州亚特兰大。 主要收获包括向高中生和大学生介绍 Java 的好处、始终认识到架构与技术应用之间的权衡,以及知识管理在软件开发中的重要性.
2024-04-28 11:14:03 123 7
原创 C语言与操作系统内核模块开发:Linux内核模块编写、设备驱动开发与内核调试(三)
在此,我们鼓励每一位技术探索者,不论是初学者还是资深专家,都能保持探索未知的热情,勇于实践,积极贡献自己的智慧与力量,共同推动技术边界向前迈进。在不断变化的技术浪潮中,让我们携手共创更加高效、安全、智能的未来。
2024-04-28 11:08:38 556 3
原创 C语言与操作系统内核模块开发:Linux内核模块编写、设备驱动开发与内核调试(二)
Linux设备驱动开发建立在对Linux内核设备模型的深刻理解之上。这一部分涵盖了设备模型的三大核心组件:总线、设备和驱动模型,它们共同构成了设备与内核交互的基础框架。
2024-04-28 11:04:09 703 2
原创 C语言与操作系统内核模块开发:Linux内核模块编写、设备驱动开发与内核调试(一)
操作系统内核作为计算机系统的指挥中心,其重要性不言而喻。它是操作系统中最为核心的部分,负责管理硬件资源、调度进程、提供系统服务、维护安全边界以及协调用户程序与硬件设备之间的交互。内核的性能与稳定性直接决定了整个系统的效率与可靠性,是支撑现代计算技术发展的基石。
2024-04-28 11:02:23 829
原创 C语言与网络编程进阶:深入探索TCP/UDP性能优化、拥塞控制机制与QUIC协议实现(二)
鼓励读者积极实践,将理论知识转化为实际技能,不断尝试新技术如HTTP/3的集成,探索eBPF在性能优化和监控中的应用。通过编写高效、安全的网络代码,持续优化网络应用程序的性能与用户体验,适应快速发展的互联网环境。C语言作为网络编程的基石,其在性能优化与新技术融合方面的潜力巨大,值得每一位网络开发者深入研究和挖掘。
2024-04-28 10:48:46 531
原创 C语言与网络编程进阶:深入探索TCP/UDP性能优化、拥塞控制机制与QUIC协议实现(一)
在计算机科学与技术的广阔领域中,C语言以其无与伦比的效率、灵活性和底层访问能力,长期以来稳居网络编程的核心地位。它不仅构成了操作系统、网络基础设施、高性能服务器乃至众多嵌入式系统的基础,而且在实现高效的数据传输解决方案中扮演着不可或缺的角色。C语言的直接内存访问、接近硬件的操作特性,以及广泛可用的网络编程库(如Berkeley Socket API),使之成为开发高性能网络应用的首选工具。
2024-04-28 10:38:40 963
翻译 Rachael Greaves 在 QCon London 上:道德人工智能可以减少数据泄露的影响
在 QCon 伦敦, Rachael Greaves,Castle Systems 首席执行官, 介绍了数据最小化作为减少数据泄露影响的机制的义务和好处。 只要考虑道德原则,人工智能自动分类和自动决策工具就可以帮助应对不断增加的数据量,从而允许挑战决策.
2024-04-27 11:04:33 69 6
原创 C语言与Web服务客户端开发:cURL、libhttpclient库的使用与RESTful API交互(二)
libhttpclient是一个专为C语言编写的HTTP客户端库,旨在简化Web服务客户端的开发工作。这个库提供了构建和发送HTTP请求、接收和解析HTTP响应的能力,适用于不同类型的HTTP通信,包括GET、POST、PUT、DELETE等RESTful API调用。
2024-04-27 11:01:11 738
原创 C语言与Web服务客户端开发:cURL、libhttpclient库的使用与RESTful API交互(一)
在现代软件开发中,C语言作为一门历史悠久且极具影响力的编程语言,依然在多个领域保持着至关重要的地位,尤其是在那些对性能、资源控制和跨平台兼容性有着严格要求的场景。在网络通信和Web服务客户端开发中,C语言由于其底层性、高效性和灵活性,经常被选为构建高性能、轻量级客户端应用程序的理想选择。无论是开发嵌入式系统、服务器端组件还是跨平台的网络工具,C语言都能提供强大的支持,使得开发者能够编写出与操作系统紧密耦合、快速响应且可移植性强的网络通信代码。
2024-04-27 10:54:42 940
原创 C语言与机器学习库对接:TensorFlow C API、Darknet等库的接口调用与模型部署(二)
Darknet 是一个开源的、用C和CUDA实现的神经网络框架,尤其以其轻量级和高效的特点被广泛应用于计算机视觉领域,特别是YOLO系列的目标检测算法。其C接口设计直接明了,允许开发者通过简单的函数调用来执行深度学习模型的相关操作。
2024-04-27 10:44:17 920
原创 C语言与机器学习库对接:TensorFlow C API、Darknet等库的接口调用与模型部署(一)
TensorFlow C API是面向那些需要在非Python环境下使用TensorFlow的开发者提供的工具,特别适用于嵌入式设备、高性能计算场景以及需要高度定制化和优化的解决方案。通过熟练掌握C API,开发者可以实现模型的高效加载、运行和控制,满足多种应用场景的需求
2024-04-27 10:39:42 887
原创 C语言与XML/JSON解析:libxml2、json-c库的使用与自定义数据模型绑定(二)
json-c库是一个C语言编写的开源库,用于处理JSON数据。
2024-04-27 10:27:02 542
原创 C语言与XML/JSON解析:libxml2、json-c库的使用与自定义数据模型绑定(一)
C语言作为一种久经考验的编程语言,由于其高效性、可移植性和接近底层硬件的能力,在系统软件开发、操作系统内核、设备驱动程序以及嵌入式系统设计中占据着核心地位。尤其是在嵌入式环境中,C语言常被用来编写紧凑、高效的代码,实现对有限资源的有效管理和控制。随着数据密集型应用的增长,无论是系统配置文件、网络通信数据还是设备间的数据交换,都离不开对各种格式数据的有效处理。因此,理解和熟练运用C语言进行数据解析,特别是在XML和JSON等现代数据交换格式上的处理,成为了系统级开发人员必备的技术能力。
2024-04-27 10:24:18 577
翻译 来自受损 XZ Utils 库的 SSH 后门
当微软工程师 安德烈斯·弗罗因德 注意到 SSH 花费的时间比平时更长,他 发现 A xz utils 中的后门, 底层库之一 系统, 这项工作花了数年时间才落实到位。 美国网络安全和基础设施安全局 (中西医结合协会) 已分配 CVE-2024-3094 到这个问题。 该后门已经进入了 Debian Sid、Fedora 41 和 Fedora Rawhide 等 Linux 发行版的测试版本,但在传播到更常用的稳定版本之前就被捕获了。 虽然有 证据 攻击者正在向发行版维护人员施压,要求其加快部署.
2024-04-26 10:28:17 74 8
原创 C语言与文本处理:编译原理基础、词法分析与简单编译器实现(二)
随着技术和需求的演进,词法分析这一基本的编译原理组成部分将继续深化和完善,以满足日益复杂的编程场景和不断提升的软件工程标准。
2024-04-26 10:25:20 621 1
原创 C语言与文本处理:编译原理基础、词法分析与简单编译器实现(一)
在现代信息技术的世界里,计算机编程语言扮演着至关重要的角色。它们是人类与计算机沟通的桥梁,使得开发者能够通过一系列明确、规范化的指令去设计、实现并维护复杂的软件系统。其中,C语言作为一门历史悠久且广泛应用的编程语言,尤其在系统软件开发、操作系统内核、设备驱动程序以及嵌入式系统设计等诸多领域展现出了其独特的魅力和不可或缺的地位。
2024-04-26 10:20:31 582
原创 C语言与正则表达式库:PCRE、Oniguruma库的使用与自定义匹配逻辑(三)
在嵌入式系统开发过程中,有时需要根据具体应用场景设计并实现复杂的文本或数据匹配规则,此时,C语言结合正则表达式库如PCRE(Perl Compatible Regular Expressions)或Oniguruma库的应用显得尤为重要。这两种库均提供丰富的正则表达式处理功能,允许开发者在C语言程序中灵活定义并执行各种复杂的匹配逻辑。
2024-04-26 10:08:58 647
原创 C语言与正则表达式库:PCRE、Oniguruma库的使用与自定义匹配逻辑(二)
Oniguruma是一个强大的正则表达式引擎,它支持多种Unicode字符编码,包括UTF-8、UTF-16BE/LE、UTF-32BE/LE以及其他单字节编码。该库以其高效的性能、丰富的正则表达式语法和高度可移植性而著称。Oniguruma遵循Perl兼容正则表达式的语法规则,并在此基础上扩展了一些额外的功能,使得开发者能够方便地处理多语言环境下复杂的文本匹配、替换和分割任务。
2024-04-26 10:06:00 335
原创 C语言与正则表达式库:PCRE、Oniguruma库的使用与自定义匹配逻辑(一)
在当今信息技术领域,C语言以其高效、灵活和接近底层硬件的特性,在各种文本处理任务中扮演着至关重要的角色。无论是文件解析、日志分析、网页爬取,还是数据分析、自动化脚本编写,C语言凭借其强大的字符串处理能力和广泛的库支持,成为开发人员手中不可或缺的工具。尤其是在文本处理方面,正则表达式作为一种标准化且功能强大的文本搜索和匹配机制,极大地提升了C语言在处理复杂文本模式、过滤数据和抽取关键信息等方面的效能。
2024-04-26 10:03:03 663
翻译 Azure 事件网格在公共预览版中支持 MQTT Last Will and Testament
近日,微软宣布推出公共预览版 最后遗嘱 (LWT) 支持 Azure 事件网格的 MQTT 代理功能,符合 MQTTv3.1.1 和 MQTTv5 规范.
2024-04-25 11:30:53 154 9
原创 C语言与密码学算法实现:RSA、AES、ECC等公钥与对称加密算法详解(三)
深入理解RSA、AES、ECC等经典加密算法的工作原理、C语言实现要点及性能特点,是密码学基础的核心部分。面对快速发展的密码学领域,持续关注后量子密码、新型加密协议等前沿趋势,积极参与学习与实践,有助于应对日益复杂且不断变化的信息安全挑战。
2024-04-25 11:26:01 1248 1
原创 C语言与密码学算法实现:RSA、AES、ECC等公钥与对称加密算法详解(二)
RSA算法基于数论中的几个核心概念,主要包括欧拉函数、欧拉定理、以及模逆运算。
2024-04-25 11:14:51 989
原创 C语言与密码学算法实现:RSA、AES、ECC等公钥与对称加密算法详解(一)
随着信息化社会的快速发展,信息已成为现代社会经济活动和日常生活中不可或缺的要素。从个人隐私、金融交易、政府机密到企业知识产权,各类敏感信息在网络空间中高速流动。与此同时,网络安全威胁日益严峻,包括数据窃取、身份冒充、网络攻击、恶意软件传播等风险日益凸显。确保信息安全不仅是维护个人权益、社会稳定和国家安全的必要条件,也是构建可信数字化环境、推动数字经济健康发展的基石。
2024-04-25 11:01:32 883 1
原创 C语言与软件逆向工程:反汇编、静态分析与动态调试技术(四)
本部分以一款具有代表性的C语言编写的实用程序——“Simple File Encryptor”为例。该程序提供文件加密与解密服务,用户输入密码后,可将选定文件加密保存为新的文件格式。
2024-04-25 10:46:14 875
原创 C语言与软件逆向工程:反汇编、静态分析与动态调试技术(三)
静态分析是一种软件分析方法,其核心特点是无需实际执行程序就能对源代码或编译后的二进制代码进行深入分析,以揭示程序的结构、行为、数据流和控制流等内在特性。
2024-04-25 10:37:53 790
原创 C语言与软件逆向工程:反汇编、静态分析与动态调试技术(二)
反汇编技术是软件逆向工程中的核心手段之一,特别是在逆向分析C语言编写的软件时,它能够将难以直接理解的机器代码转化为人类可读的汇编指令,从而揭示程序的内部逻辑。本节将详细介绍反汇编的基础原理、常用工具,并通过实践案例展示如何运用反汇编技术来解析C语言程序的关键结构。
2024-04-25 10:35:17 1010
原创 C语言与软件逆向工程:反汇编、静态分析与动态调试技术(一)
C语言是一种结构化、高效、可移植的高级编程语言,自其诞生以来,一直在软件开发领域占据着举足轻重的地位。
2024-04-25 10:30:59 833
翻译 Stability AI发布3D模型生成AI稳定视频3D
稳定性AI近期发布 稳定的3D视频 (SV3D),一种可以从单个 2D 图像生成 3D 网格对象模型的 AI 模型。 SV3D 是基于 稳定的视频扩散 模型并在 3D 对象生成基准上产生最先进的结果.
2024-04-24 11:42:40 255 13
字节跳动 穿山甲广告SDK Bytedance-UnionAD flutter版本插件.zip
2024-05-01
字节跳动 APM 团队预备招聘社群,来一起聊聊大厂面试经验、简历如何编写、技术…….zip
2024-05-01
基于 grpc RPC微服务 + gin HTTP服务完成的第5届字节跳动青训营-极简抖音后端项目.zip
2024-05-01
基于 kitex RPC微服务 + Hertz HTTP服务完成的第三届字节跳动青训营-极简抖音后端项目.zip
2024-05-01
Just Code ! 针对面试训练算法题, 目前包括字节跳动面试题、 LeetCode 和剑指 offer.zip
2024-05-01
根据超过 2000 篇真实面经整理的腾讯,阿里,字节跳动,Shopee,美团,滴滴高频面试题.zip
2024-05-01
C++中的右值引用与移动语义?
2024-04-28
C++中的C++17/20/23新特性?
2024-04-25
C++中的内存模型与数据竞争
2024-04-25
C++中的线程池与异步编程?
2024-04-24
C++中的模版元编程与类型计算?
2024-04-24
C++中的异常规范(Exception Specifications)?
2024-04-23
C++中的std::function与std::bind?
2024-04-22
C++中的模板元编程与constexpr?
2024-04-22
C++中的模板元编程与constexpr/
2024-04-22
C++中的模板特化与偏特化?
2024-04-21
C++中的并发编程(线程与原子操作)?
2024-04-21
C++11/14/17/20新特性?
2024-04-20
C++中的多态性实现?
2024-04-20
C++中的STL容器与算法?
2024-04-19
C++中的命名空间(namespace)?
2024-04-19
C++中的STL容器与算法?
2024-04-18
C++中的模板元编程?
2024-04-18
C++中的模板元编程
2024-04-17
C++中的构造函数和析构函数重载?
2024-04-17
C++中的RAII资源管理
2024-04-16
C语言中的函数重入性与线程安全?
2024-04-16
C语言中的内存对齐与数据结构布局优化
2024-04-15
C语言中的assert断言宏?
2024-04-15
C语言中的可变参数函数(varargs)?
2024-04-14
C语言中的预处理器宏技巧与陷阱?
2024-04-14
C语言中的inline函数(内联函数)?
2024-04-13
C语言中的switch-case语句与fallthrough现象?
2024-04-13
C语言中的变长数组(VLA)与栈上动态内存分配?
2024-04-12
如何避免不必要的执行分支,并给出防止fallthrough的编程技巧?
2024-04-12
解释C语言中的extern关键字?
2024-04-11
分析C语言中的goto语句?
2024-04-11
解释C语言中的位字段(bit-field)?
2024-04-10
C语言中的如何进行信号处理?
2024-04-10
解释C语言中的静态变量与全局变量?
2024-04-09
C语言中的内存对齐与性能影响?
2024-04-09
C语言中的函数参数传递机制?
2024-04-08
C语言中的静态变量与全局变量?
2024-04-08
C语言中的const限定符与指针?
2024-04-07
C语言中的指针运算与指针算术?
2024-04-07
TA创建的收藏夹 TA关注的收藏夹
TA关注的人