1.字符集与字符编码 1.1.字符集 1.2.字符编码 1.3.两者的关系 2.字符编码的发展历史 2.1.第一个阶段ASCII编码 2.1.1.ASCII 2.1.2.EASCII 1.字符集与字符编码 1.1.字符集 字符集(CharcaterSet或Charset):是一个系统支持的所有抽象字符的集合,也就是一系列字符的集合。字符是各种文字和符号的总称,包括各国家文字、标点符号、图形符号、数字等。常见的字符集有:ASCII字符集、GB2312字符集(主要用于处理中文汉字)、GBK字符集(主要用于处理中文汉字)、Unicode字符集等。 1.2.字符编码 字符编码(Char...
1.本网站的系统架构 2.场景概述 3.影响效率的问题和解决方案 3.1.图片插入-根据文章来分类管理 3.1.1.效率问题 3.1.2.解决方案 3.2.图片插入-从剪贴板中插入图片 3.2.1.效率问题 3.2.2.解决方案 3.3.图片插入-在VSCode中预览图片 3.3.1.效率问题 3.3.2.解决方案 3.4.提交代码时自动部署 3.4.1.效率问题 3.4.2.解决办法 1.本网站的系统架构 网站示例:SunLogging 服务器:阿里云ECS 服务器系统:Ubuntu24.04LTS 博客框架:Hexo 网站主题:Volantis 2.场景概述 通...
1.运行命令 2.设置断点 3.查看源码 4.打印表达式 5.查看运行信息 5.1.设置和查看运行参数的Demo 6.分割窗口 7.参考文档 上一篇《LinuxC开发6GDB调试》中我们讲解了GDB的调试流程和常用的调试方法。GDB的调试指令众多,我们这里针对常用的指令做一个汇总(按功能分类),以便需要时进行查阅。 1.运行命令 命令 缩写 说明 run r 运行程序,当遇到断点后,程序会在断点处停止运行,等待用户输入下一步的命令。 start 开始执行程序,停在main函数第一行语句前面等待命令。 continue c 继续执行,到下一个断点处(或运行结束) ...
1.环境说明 2.体验过的hexo站点主题 2.1.Acorn 2.2.hexo-theme-cafe 2.3.volantis 2.4.NexT 3.参考文档 1.环境说明 博客框架:Hexo 网站主题:Volantis 评论系统:Disqus 服务器:阿里云ECS 服务器系统:Ubuntu24.04LTS 2.体验过的hexo站点主题 前面的章节我们讲解了如何在自己的独立服务器上部署nginx,配置域名解析,已经完成hexo博客的自动化部署。但这些步骤完成之后,我们的网站依然还只能显示简单的文本信息:hellosunlogging!。 接下来要做的就是优化我们的网站页面和展示效...
1.什么是CMake? 1.1.CMake的定义 1.2.CMake有哪些优势? 1.3.CMake的特点 1.4.Cmake、CMakeLists.txt、Make、Makefile之间的关系 2.应用案例 2.1.项目概述 2.2.CMakeLists.txt 2.2.1.基本用法 2.2.2.完整内容 2.2.3.构建执行 上一篇《LinuxC开发4入门makefile一篇文章就够了》我们讲解了通过Makefile来编译包含多个.cpp和多个.h文件的复杂C项目。这种方式用来构建中小型的Linux(或类Unix系统)C项目,是没有问题的。但如果是跨平台项目或者大型项目,M...
1.本网站的系统架构 2.安装git 3.配置git用户 3.1.为什么要创建git用户 3.2.创建git用户 3.3.设置git用户的密码 3.4.创建公钥-私钥对 3.5.服务器配置公钥 4.hexo配置自动化部署 4.1.配置Git仓库 4.2.hexo站点配置 1.本网站的系统架构 网站示例:sunlogging.com 服务器:阿里云ECS 服务器系统:Ubuntu24.04LTS 博客框架:Hexo 网站主题:Volantis 2.安装git 执行环境:ECS服务器+本地计算机 安装 sudoaptinstall-ygit 验证 git--version...
VSCode是笔者用过的最好用的开发工具,没有之一。笔者14年的码龄生涯中,先后用过Eclipse、IntelliJIDEA、WebStorm、PyCharm、VisualStudio(2010/2013/2015)、NetBeans、SublimeText等,但自从用VSCode之后,就再没换过其他工具,一直用到现在有5年多的时间。 1.本文目标 这篇文章主要介绍如何使用VSCode来进行C项目的开发,用VSCode来搭建一套C跨平台开发环境。 2.准备工作 官网下载VSCode并安装:https://code.visualstudio.com/ 3.安装C编译器和调试器 参见《一文搞懂C/...
1.插件的用法 1.1.C/C 1.1.1.插件介绍 1.1.2.插件配置 1.2.Clang-Format 1.3.cpp-check-lint 1.3.1.cpplint 1.3.2.cppcheck 1.3.3.插件的使用 1.4.C/CAdvancedLint 1.4.1.插件介绍 1.4.2.插件配置 1.5.BracketPairColorizer 1.5.1.插件介绍 1.5.2.功能配置 1.6.CodeRunner 1.6.1.插件介绍 1.6.2.插件配置 1.6.3.插件使用 1.7.TODOHighlight 1.7.1.插件介绍 1.7.2....
1.make和Makefile 1.1.什么是make? 1.2.什么是Makefile? 1.3.make与Makefile的关系 2.Makefile的语法 2.1.基本语法 2.2.变量 2.3.伪目标 2.4.模式规则 2.5.自动变量 2.6.条件判断 3.示例演示 3.1.编译HelloWorld程序 3.2.编译多文件项目 3.2.1.项目概述 3.2.2.需求分析 3.2.3.MakefileV1.0 3.2.4.MakefileV2.0 LinuxC开发系列的前面2篇文章,我们介绍了通过g来编译C代码。这对于HelloWorld程序或者简单的Demo程序来...
1.本网站的系统架构 2.(阿里云)域名解析配置 2.1.快速配置 2.2.自定义配置 2.2.1.记录类型 2.2.2.主机记录 2.2.3.记录值 2.2.4.解析请求来源 3.域名解析原理 3.1.什么是DNS 3.2.DNS的解析原理 3.2.1.1.本地查询 3.2.2.2.客户机到服务器查询 3.2.3.3.服务器到服务器查询 3.3.递归查询与迭代查询 3.3.1.递归查询 3.3.2.迭代查询 4.常用的公共DNS服务器 1.本网站的系统架构 网站示例:sunlogging.com 服务器:阿里云ECS 服务器系统:Ubuntu24.04LTS 博客框...
1.什么是SSH? 2.下载shh客户端 3.配置ssh密钥 4.连接服务器 5.常见问题 5.1.ITISPOSSIBLETHATSOMEONEISDOINGSOMETHINGNASTY! 1.什么是SSH? SSH(SecureShell)是一种加密的网络协议,用于在不安全的网络中安全地远程登录到其他计算机系统。它提供了对远程服务器的安全访问,并支持加密数据传输。SSH协议通过使用公钥加密技术来确保通信的安全性,防止中间人攻击和数据泄露。 2.下载shh客户端 shh是一个远程连接的软件,有服务端server和客户端client两部分组成。因为我们是要连接远端服务器,所以只需要c...
1.C/C的编译过程 1.1.预处理 1.2.编译 1.3.汇编 1.3.1.汇编过程 1.3.2.目标文件 1.4.链接 2.编译过程示例 2.1.源代码 2.2.逐步编译程序 2.2.1.编译指令 2.2.2.链接报错问题 2.3.单步编译 3.gcc/g与gpp、as、ld的关系 3.1.关系图 3.2.示例演示 4.参考文档 上一篇《LinuxC开发2编写、编译、执行第一个程序》我们编写了一个Helloworld程序,并在Linux下完成了正常的编译和执行。 上一篇中我们用g./demo01.cpp这个指令就轻松将我们的demo01.cpp源代码编译成了二进制程...
上一篇《LinuxC开发1搭建C开发环境》我们搭建好了C的开发环境,本篇我们将编写、编译、执行第一个程序。 1.第一个C程序 1.1.demo01.cpp 这里写一个最简单的HelloWord程序 include<iostream> intmain() { std::cout<<"Hello,world!"<<std::endl; return0; } 1.2.编译和执行 这是最简单的编译和执行方式 进入源码目录 cddemo 编译:g./demo01.cpp g./demo01.cpp 执行:./a.out ./a.out Hello,world! ...
1.什么是汇编语言? 1.1.汇编语言的定义 1.2.汇编语言与机器语言 1.2.1.相同点 1.2.2.不同点 2.汇编语言的主要特点 3.汇编语言的基本组成 4.汇编器 4.1.主要工作流程 4.2.常见的汇编器 4.2.1.NASM(NetwideAssembler) 4.2.2.MASM(MicrosoftMacroAssembler) 4.2.3.GAS(GNUAssembler) 4.2.4.TASM(TurboAssembler) 4.3.语法差异 4.3.1.NASM示例 4.3.2.MASM示例 4.3.3.GAS示例 4.4.总结 1.什么是汇编语言...
1.C编译器介绍 1.1.MSVC 1.1.1.VisualC与VisualStudio的版本对应关系 1.1.2.工具链的主要工具 1.2.GCC 1.2.1.GCC的主要优点 1.2.2.GCC的常用工具 1.2.3.MinGW 1.3.Clang/LLVM 1.3.1.Clang介绍 1.3.2.Clang与LLVM的关系 1.3.3.Clang/LLVM与GCC 2.C编译器的安装 2.1.Windows 2.1.1.MSVC安装 2.1.2.环境变量配置 2.2.Linux(Ubuntu) 2.2.1.安装GCC/GDB 2.2.2.安装CMake 2.3...
1.2011.09.14 2011.09.14,当时还在读大二的我在CSDN写了第一篇技术博客《Java中的50个关键字)》。 当时,在百度搜索技术问题的时候,经常能搜到CSDN里大牛写的文章,觉得非常厉害,非常崇拜他们。然后就向他们学习,尝试着自己也写一写博客。第一篇博客,来回修修改改写了两周,因为真的不知道怎么写,只能参考别人的文章依葫芦画瓢,关键这个飘还一直画歪了,就一直擦了重画,熬黑了好几个熊猫眼。。。 2.2014.06.05 写着写着三年就过去了,转眼就到了大四。这时发现已经写了183篇文章了,博客的访问量达到了近60万。也就在这时,我被社区评为了CSDN博客专家,那天是2014...
1.安装GCC/GDB 1.1.安装 1.2.校验 2.安装CMake 2.1.安装 2.2.校验 3.安装IDE 3.1.VSCode 3.2.CLion 1.安装GCC/GDB 1.1.安装 更新软件源 sudoaptupdate 通过以下命令安装编译器和调试器 sudoaptinstallbuild-essentialgdb Ubuntu默认情况下没有提供C/C编译环境的,你可以单独安装gcc、g等工具,但会比较麻烦。Ubuntu提供了一个build-essential软件包,安装了该软件包,编译c/c所需要的软件包也都会被安装。 1.2.校验 以下命令确认每个软件是否...
1.关键词 2.fileutil.h 3.fileutil.cpp 4.filesystem_win.h 5.filesystem_win.cpp 6.filesystem_unix.cpp 7.源码地址 1.关键词 C文件系统操作拷贝文件拷贝文件夹跨平台 2.fileutil.h pragmaonce include<string> include<cstdio> include<cstdint> include"filetype.h" include"filepath.h" namespacecutl { / @briefThefilegua...
1.什么是迭代器? 2.如何使用迭代器 3.C迭代器说明 4.迭代器的高级应用 4.1.Enumerator.hpp 4.2.Iterator.cpp 4.3.输出结果 4.4.更多详细代码 1.什么是迭代器? 迭代器(Iterator)是按照一定的顺序对一个或多个容器中的元素从前往遍历的一种机制,比如for循环就是一种最简单的迭代器,对一个数组的遍历也是一种的迭代遍历的过程。GOF给出的定义为:提供一种方法访问一个容器(container)对象中各个元素,而又不需暴露该对象的内部细节。迭代器有时也称为枚举器(Enumerator),其结构图如下: 迭代器结构图 迭代器其实就是维护一个...
1.关键词 2.fileutil.h 3.fileutil.cpp 4.filesystem_win.h 5.filesystem_win.cpp 6.filesystem_unix.cpp 7.源码地址 1.关键词 C文件系统操作列出指定目录下的所有文件列出指定目录下的所有文件夹跨平台 2.fileutil.h pragmaonce include<string> include<cstdio> include<cstdint> include"filetype.h" include"filepath.h" namespacecutl { / ...