会员
周边
新闻
博问
闪存
赞助商
YouClaw
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
明明1109
博客园
首页
新随笔
联系
订阅
管理
上一页
1
···
15
16
17
18
19
20
21
22
23
···
25
下一页
2021年4月6日
Linux 系统编程学习笔记 - TCP/IP协议基础
摘要: TCP/IP协议栈与数据包封装 TCP/IP协议栈分为4层:应用层Application、传输层Transport、网络层Network、链路层Link。 两台PC通过TCP/IP协议通讯过程示意图: 每一层协议协议作为数据,到下一层协议都要加一个数据首部(header),称为封装(Encapsul
阅读全文
posted @ 2021-04-06 19:08 明明1109
阅读(469)
评论(0)
推荐(1)
2021年4月5日
Linux 系统编程学习笔记 - 线程
摘要: 线程的概念 线程是操作系统能够进行运算调度的最小单位,包含在进程中,是进程实际运作单位。 线程共享资源: 文件描述符 每种信号的处理方式(SIG_IGN/SIG_DFL or 自定义信号 处理函数) 当前工作目录 用户id和组id 每个线程各有一份的资源: 线程id 上下文,包括各种寄存器的值/PC
阅读全文
posted @ 2021-04-05 11:00 明明1109
阅读(269)
评论(0)
推荐(1)
2021年4月2日
Linux 系统编程学习笔记 - 终端、作业控制与守护进程
摘要: 终端 终端的基本概念 每个进程都可以通过一个特殊设备文件/dev/tty访问它的控制终端,每个终端设备都对应一个不同的设备文件,/dev/tty 提供了一个通用的接口,一个进程要访问它的控制终端即可以通过/dev/tty,也可以通过该终端设备所对应的设备文件来访问。 ttyname函数可以由文件描述
阅读全文
posted @ 2021-04-02 00:06 明明1109
阅读(866)
评论(0)
推荐(0)
2021年4月1日
Linux 系统编程学习笔记 - 信号
摘要: 信号的基本概念 终端启动前台进程后,按Ctrl-C执行过程: 用户输入命令,shell启动前台进程 `$ ./a.out'; 用户按下Ctrl-C,产生硬件中断; 如果CPU正在执行该进程代码,则该进程的用户空间代码暂停执行,CPU从用户态切换到内核态处理硬件中断; 终端驱动程序将Ctrl-C解释成
阅读全文
posted @ 2021-04-01 15:11 明明1109
阅读(271)
评论(0)
推荐(0)
2021年3月29日
Linux 系统编程学习笔记 - Shell脚本
摘要: Shell简介 shell用于解释执行用户的命令。 shell 2种执行方式: 用户输入一条,解释执行一条; 事先写一个shell脚本,包含多条命令,shell一次执行完毕,这种方式也叫批处理(batch); shell的多个版本: sh(Bourne Shell):Steve Bourne开发,各
阅读全文
posted @ 2021-03-29 20:55 明明1109
阅读(524)
评论(0)
推荐(0)
2021年3月26日
Linux> gcc编译选项
摘要: -o选项 编译并链接,生成可执行程序 $ gcc main.c -o main # 编译main.c,链接后生成可执行程序main -c选项 只编译,不链接 $ gcc -c main.c # 生成main.o目标文件 -g选项 编译、链接生成可执行程序,可执行程序包含调试信息。可以用于GDB调试。
阅读全文
posted @ 2021-03-26 23:12 明明1109
阅读(192)
评论(0)
推荐(0)
Linux> MakeFile基础
摘要: 参考《Linux C编程一站式学习》 1. 基本规则 如要编译、链接main.c, stack.c, maze.c, 最终生成可执行文件main。 用手动输入gcc命令方式: $gcc main.c stack.c maze.c -o main 如果有单个文件修改,还执行上面的命令,会全部.c文件都
阅读全文
posted @ 2021-03-26 23:05 明明1109
阅读(332)
评论(0)
推荐(0)
2021年3月24日
Linux> man open查不到open文档,怎么办?
摘要: Linux控制台输入 $ man open 出现的是openvt的信息,要怎么办? 可以为man命令添加-a选项,按q退出后输入open $ man -a open #该命令的含义是,可以分页显示所有可能的查找目标文档,再进行查询 man -a intro 正确执行时显示手册中包含的所有可用的 in
阅读全文
posted @ 2021-03-24 10:42 明明1109
阅读(664)
评论(0)
推荐(0)
Linux> 文件与存取权限
摘要: 1. 用户和权限 Linux规定了4种不同类型用户: 文件主 owner; 同组用户 group; 可以访问系统的其他用户 others; 超级用户 root,具体管理系统的特权,拥有所有权限; 用户有3种访问文件/目录的方式的权限类型:读权限 r,写权限 w,可执行/查找权限 x。只有用户具备对应
阅读全文
posted @ 2021-03-24 00:29 明明1109
阅读(430)
评论(0)
推荐(0)
2021年3月23日
C++ Primer学习笔记 - 第17章 标准库特殊实施
摘要: 目录17.1 tuple类型17.1.1 定义和初始化tuple17.1.2 访问tuple成员17.1.2 使用tuple返回多个值17.2 bitset类型17.2.1 定义和初始化bitset17.2.2 bitset操作17.3 正则表达式17.4 随机数17.4.1 随机数引擎和分布17.
阅读全文
posted @ 2021-03-23 17:18 明明1109
阅读(161)
评论(0)
推荐(0)
2021年3月22日
STL equal(),equal_range()笔记
摘要: equal函数 equal也是C++ STL模板函数,用于比较指定的2个迭代器范围元素是否完全相等。 比较方式:==(判断相等的符号,要求迭代器指向元素支持),或者指定的谓词pred 返回值:只有[first1, last1)所有元素都与[first2, last2)所有元素都相等时,才返回true
阅读全文
posted @ 2021-03-22 15:35 明明1109
阅读(2190)
评论(0)
推荐(0)
2021年3月21日
C++> static_assert静态断言与assert动态断言
摘要: 1. static_assert static_assert静态断言,是C++关键字,作用是让编译器在编译期对常量表达时进行断言。如果通过,就不报错;如果不通过,就报错 用法: static_assert(常量表达式, 错误提示信息); 常量表达式的值为true或者false,或者可以转化为true
阅读全文
posted @ 2021-03-21 17:53 明明1109
阅读(851)
评论(0)
推荐(1)
2021年3月18日
C++> delete关键字初探
摘要: delete有2个作用: 释放new分配的动态内存; 阻止编译器自动合成函数; 释放new分配的动态内存 delete需要与new配对使用,其参数可以是指向一块内存首地址或空指针(nullptr)。不能对同一块内存多次delete,但是可以对空指针多次delete。 注意delete和delete[
阅读全文
posted @ 2021-03-18 10:33 明明1109
阅读(2701)
评论(0)
推荐(1)
2021年3月17日
C++> const和constexpr区别与联系
摘要: 提到const、constexpr,就需要引入常量表达式。常量表达式指值不会改变,且编译过程就能得到计算结果的表达式。 i.e. 编译阶段能得到值,并且不能改变。 const修饰对象无法修改,constexpr更侧重于修饰对象编译期确定且无法修改。具体区别,体现在以下几个方面: 修饰变量 const
阅读全文
posted @ 2021-03-17 16:28 明明1109
阅读(1789)
评论(0)
推荐(2)
2021年3月15日
C++ > 右值引用和左值引用的区别
摘要: 右值引用和左值引用有什么区别? 右值引用,只能绑定到右值的引用,通过&&获得,即只能绑定到即将销毁的对象上,如字面量,临时计算结果,函数返回值,无名对象。 特点: 1)通过右值引用,可自由地移动(std::move)绑定的资源。 2)返回右值的,包括非引用类型的函数及算术、关系、位、后置递增/递减运
阅读全文
posted @ 2021-03-15 19:17 明明1109
阅读(572)
评论(0)
推荐(0)
2021年3月11日
C++ Primer学习笔记 - 第12章 动态内存与智能指针
摘要: 12.1 动态内存与智能指针 new, delete运算符:动态申请,释放内存; 智能指针:shared_ptr,unique_ptr,weak_ptr,由标准库提供,头文件 memory 12.1.1 shared_ptr类 允许多个指针指向同一个对象。默认初始化的shared_ptr指针为空指针
阅读全文
posted @ 2021-03-11 13:58 明明1109
阅读(670)
评论(0)
推荐(0)
C/C++> strcpy, strncpy, strcpy_s, strncpy_s 联系与区别
摘要: C++中,复制C风格字符串的方法有4种:strcpy, strncpy, strcpy_s, strncpy_s。它们有什么区别和联系了? 1. strcpy strcpy和strncpy是早期C库函数,头文件string.h。现在已经发布对应safe版本,也就是strcpy_s, strncpy_
阅读全文
posted @ 2021-03-11 00:56 明明1109
阅读(7530)
评论(0)
推荐(1)
2021年3月4日
C++ Primer学习笔记 - 第10章 初识泛型算法
摘要: 目录10.2 初识泛型算法10.2.1 只读算法10.2.2 写容器的算法10.2.3 重排容器元素的算法10.3 定制操作10.3.1 向算法传递参数10.3.2 lambda表达式10.3.3 lambda 捕获和返回10.3.4 参数绑定10.4 再探迭代器10.4.1 插入迭代器10.4.2
阅读全文
posted @ 2021-03-04 19:02 明明1109
阅读(730)
评论(0)
推荐(0)
2021年3月3日
C++ Primer学习笔记 - 第9章 顺序容器
摘要: 第9章 顺序容器 容器是指什么? 一个容器指的是一些特定类型对象的集合。 9.1 顺序容器概述 顺序容器,sequential container,提供了控制元素存储何访问顺序的能力,顺序取决于元素加入容器时的位置,与元素值无关。 标准库提供了3种容器适配器,分别为容器操作定义了不同的接口,来与容器
阅读全文
posted @ 2021-03-03 14:31 明明1109
阅读(296)
评论(0)
推荐(1)
2021年2月26日
C++ Primer学习笔记 - 第8章IO库
摘要: C++不直接处理输入输出(IO),而通过一组标准库中定义的类型来处理IO。如istream, ostream等类。 已介绍常用IO库: istream 输入流类型,提供输入操作 ostream 输出流类型,提供输出操作 cin istream对象,从标准输入读取数据 cout ostream对象,从
阅读全文
posted @ 2021-02-26 23:31 明明1109
阅读(296)
评论(0)
推荐(0)
上一页
1
···
15
16
17
18
19
20
21
22
23
···
25
下一页
公告