1. 2011.09.14 2011.09.14,当时还在读大二的我在CSDN写了第一篇技术博客《Java中的50个关键字)》。 当时,在百度搜索技术问题的时候,经常能搜到CSDN里大牛写的文章,觉得非常厉害,非常崇拜他们。然后就向他们学习,尝试着自己也写一写博客。第一篇博客,来回修修改改写了两周,因为真的不知道怎么写,只能参考别人的文章依葫芦画瓢,关键这个飘还一直画歪了,就一直擦了重画,熬黑了
上一篇《字符编码发展史5 — UTF-16和UTF-32》我们讲解了UTF-16和UTF-32编码。本篇我们将继续讲解字符编码中的字节序标记(BOM)。 2.3. 第三个阶段 国际化 2.3.2. Unicode的编码方式 2.3.2.5. BOM 1. 什么是BOM? BOM是Byte Order Mark的缩写,翻译成中文是:字节序标记,主要用于文本编码中,表示数据存储的字节顺序。 前面我们讲
上一篇《字符编码发展史3 — GB2312/Big5/GBK/GB18030》我们讲解了ANSI编码中的GB2312/Big5/GBK/GB18030。本篇我们将继续讲解字符编码的第三个发展阶段中的Unicode与UTF-8。 2.3. 第三个阶段 国际化 前面提到的第二个阶段,各个国家和地区各自为政,纷纷制定了适用于自己国家语言的字符编码(统称为ANSI码),确实能解决该地区范围内语言文字的信息
1. Linux C++ 性能分析工具汇总 1.1. gprof 1.2. Valgrind 1.3. Perf 1.4. SystemTap 1.5. Nsight Computing 1.6. Google Performance Tools 1.7. Intel VTune Profiler 1.8. OProfile 1.9. Intel VTune 1.10. SystemTap 1
1. 什么是gprof? 2. gprof的用法 2.1. 编译程序 2.2. 运行程序 2.3. 生成分析报告 2.4. gprof常用参数说明 2.5. 分析报告解读 2.5.1. Flat profile 各个字段的含义 2.5.2. Call graph 各个字段的含义 3. Demo演示 3.1. demo04.cpp 源码 3.2. 编译、运行和分析 3.3. 查看分析
2.2. 第二个阶段 本地化 2.2.1. ANSI 2.2.2. ISO/IEC 8859-N 2.2.2.1. 什么是ISO/IEC 8859-N? 2.2.2.2. ISO 8859-1的编码表 上一篇《字符编码发展史1 — ASCII和EASCII》我们讲解了字符编码的起源ASCII和EASCII。本篇我们将继续讲解字符编码的第二个发展阶段中的ISO 8859-N。 2.2
1. 字符集与字符编码 1.1. 字符集 1.2. 字符编码 1.3. 两者的关系 2. 字符编码的发展历史 2.1. 第一个阶段 ASCII编码 2.1.1. ASCII 2.1.2. EASCII 1. 字符集与字符编码 1.1. 字符集 字符集(Charcater Set或Charset): 是一个系统支持的所有抽象字符的集合,也就是一系列字符的集合。字符是各种文字和符
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.
1. 环境说明 2. 体验过的hexo站点主题 2.1. Acorn 2.2. hexo-theme-cafe 2.3. volantis 2.4. NexT 3. 参考文档 1. 环境说明 博客框架: Hexo 网站主题: Volantis 评论系统: Disqus 服务器: 阿里云ECS 服务器系统: Ubuntu 24.04 LTS 2. 体验过的hexo站点主题 前面的章节我
1. 运行命令 2. 设置断点 3. 查看源码 4. 打印表达式 5. 查看运行信息 5.1. 设置和查看运行参数的Demo 6. 分割窗口 7. 参考文档 上一篇《Linux C++ 开发6 - GDB调试》中我们讲解了GDB的调试流程和常用的调试方法。GDB的调试指令众多,我们这里针对常用的指令做一个汇总(按功能分类),以便需要时进行查阅。 1. 运行命令 命令 缩写 说明
1. GDB的介绍 1.1. 什么是GDB? 1.2. 安装GDB 2. 编译带调试信息的程序 2.1. 命令行编译 2.2. makefile编译 2.3. cmake编译 3. GDB使用流程 3.1. 测试源代码准备 3.2. 启动GDB 3.3. 查看源码 3.4. 运行程序 3.5. 设置断点 3.6. 单步执行 3.7. 查看变量 4. GDB常用命令 与Wind
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. 构建执行 上一篇《Lin
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
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/C++ Advanced Lint 1.4.1. 插件介绍 1.4.2. 插件配置 1.5. Bracket P
VSCode是笔者用过的最好用的开发工具,没有之一。笔者14年的码龄生涯中,先后用过Eclipse、 IntelliJ IDEA、 WebStorm、 PyCharm、 Visual Studio(2010/2013/2015)、 NetBeans、 Sublime Text等,但自从用VSCode之后,就再没换过其他工具,一直用到现在有5年多的时间。 1. 本文目标 这篇文章主要介绍如何使用VS
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. 本网站的系统架构 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.
1. 本网站的系统架构 2. nginx介绍 3. (Ubuntu)安装nginx 4. 常用命令 5. 配置nginx 5.1. 创建网站根目录和首页 5.2. 新建配置文件 5.3. 设置配置内容 5.4. 修改 /etc/nginx/sites-enabled/default 软连接 5.5. 重新加载nginx配置 6. 开启服务器的80端口 7. 测试验证 8. nginx常见问
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.
1. 什么是汇编语言? 1.1. 汇编语言的定义 1.2. 汇编语言与机器语言 1.2.1. 相同点 1.2.2. 不同点 2. 汇编语言的主要特点 3. 汇编语言的基本组成 4. 汇编器 4.1. 主要工作流程 4.2. 常见的汇编器 4.2.1. NASM(Netwide Assembler) 4.2.2. MASM(Microsoft Macro Assembler) 4.
上一篇《Linux C++ 开发1 - 搭建C++开发环境》我们搭建好了C++的开发环境,本篇我们将编写、编译、执行第一个程序。 1. 第一个C++程序 1.1. demo01.cpp 这里写一个最简单的HelloWord程序 #include <iostream> int main() { std::cout << "Hello, world!&quo
1. C++ 编译器介绍 1.1. MSVC 1.1.1. Visual C++与Visual Studio的版本对应关系 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.
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. 安装 # 更新软件源 sudo apt update # 通过以下命令安装编译器和调试器 sudo apt install build-essential gdb
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 #pragma once #include <string> #i
1. 关键词 C++ 文件系统操作 查找指定文件夹下的特定文件 跨平台 2. fileutil.h #pragma once #include <string> #include <cstdio> #include <cstdint> #include "filetype.h" #include "filepath.h"
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 #pragma once #include &
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 #pragma once #include <string&
1. 关键词 2. fileutil.h 3. fileutil.cpp 4. 源码地址 1. 关键词 C++ 文件系统操作 读取纯文本文件 写入纯文本文件 跨平台 2. fileutil.h #pragma once #include <string> #include <cstdio> #include <cstdint> #include &quo
1. 方法一 2. 方法二 3. 结果示例 1. 方法一 # 用法 lsof -i:端口号 # 示例 lsof -i :6870 2. 方法二 # 用法 netstat -tunlp |grep 端口号 # 示例 netstat -tunlp |grep 6870 3. 结果示例
1. 什么是迭代器? 2. 如何使用迭代器 3. C++迭代器说明 4. 迭代器的高级应用 4.1. Enumerator.hpp 4.2. Iterator.cpp 4.3. 输出结果 4.4. 更多详细代码 1. 什么是迭代器? 迭代器(Iterator)是按照一定的顺序对一个或多个容器中的元素从前往遍历的一种机制,比如for循环就是一种最简单的迭代器,对一个数组的遍历也是一种的迭代
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号