
笔记
文章平均质量分 80
looox007
这个作者很懒,什么都没留下…
展开
-
文件控制的内核表达
在同一个进程中,如果多次使用open打开同一个文件,每次调用open都会返回一个新的文件描述符。这些文件描述符是相互独立的,每个都有自己的文件读写位置等状态。修改其中一个文件描述符的状态不会影响其他文件描述符。 在父子进程之间,如果调用fork创建子进程,子进程会继承父进程的文件描述符表。这意味着父子进程共享相同的文件描述符,包括相同的文件读写位置。如果一个进程修改了文件的读写位置,另一个进程也会受到影响。原创 2023-12-12 15:41:54 · 998 阅读 · 3 评论 -
Linux进程控制
在调用进程内部执行一个可执行文件。exec 函数族的作用是根据指定的文件名找到可执行文件,并用它来取代调用进程的内容。exec 函数族的函数执行成功后不会返回,因为调用进程的实体,包括代码段、据段和堆栈等都已经被新的内容取代,只留下进程ID 等一些表面上的信息仍保持原样;只有调用失败了才会返回 -1并从原程序的调用点接着往下执行。调用exec 函数族并不是新建一个进程而是只替换用户区的数据在 UNIX 系统中,用户通过终端登录系统后得到一个 shell 进程,这个终端成为 shell 进程的。原创 2023-11-28 18:14:59 · 1144 阅读 · 0 评论 -
c++计时方法
c++的传统计时方法和c++11标准的最佳计时方法原创 2023-05-28 23:38:19 · 211 阅读 · 0 评论 -
c++常用stl容器及技巧
C++STL总结及使用技巧原创 2023-05-28 23:27:09 · 718 阅读 · 0 评论 -
linux如何修改文件权限
直接修改文件目录的读、写、执行权限,但是不能精确到拥有者、组、其他、chmod +/-rwx 文件名目录名。chmod 在设置权限时,可以简单地使用三个数字分别对应 【拥有者 组 其他】用户的权限。chown,chgrp,chmod这三个命令分别修改不同的群体。常见数字组合有(u表示用户/g表示组/o表示其他)原创 2023-05-28 22:21:36 · 101 阅读 · 0 评论 -
SQL数据查询语言DQL
分页操作在业务系统开发时,也是非常常见的一个功能,我们在网站中看到的各种各样的分页条,后台都需要借助于数据库的分页操作。执行时机不同:where是分组之前进行过滤,不满足where条件,不参与分组;DQL英文全称是Data Query Language(数据查询语言),数据查询语言,用来查询数据库中表的记录。判断条件不同:where不能对聚合函数进行判断,而having可以。模糊匹配(_匹配单个字符, %匹配任意个字符)在in之后的列表中的值,多选一。或者 (多个条件任意一个成立)原创 2023-03-14 22:03:41 · 391 阅读 · 0 评论 -
SQL数据定义语言DDL、
数据库SQL语言的数据定义操作,DDL语句原创 2023-03-14 22:03:30 · 187 阅读 · 0 评论 -
面向对象程序设计——类模板
模板指C++能够将数据类型作为一个可变化的数据类型形参进行定义的功能。原创 2022-06-24 16:52:25 · 944 阅读 · 0 评论 -
面向对象程序设计——运算符重载
运算符重载运算符重载的概念实质为运算符定义新的运算功能,使它除具备有原来系统规定的功能外,还具备新定义的功能。运算符重载的实质就是函数重载或函数多态。运算符重载是一种形式的C++多态。目的在于让人能够用同名的函数来完成不同的基本操作。要重载运算符,需要使用被称为运算符函数的特殊函数形式,运算符函数形式:operator p(argument-list)//operator 后面的’p’为要重载的运算符符号。规则C++规定重载后的运算符的操作对象必须至少有一个是用户定义的类型(防止二义性)原创 2022-05-22 13:37:37 · 1278 阅读 · 0 评论 -
面向对象程序设计——单链表
概念:正如这幅图中所表示的那样,单链表就是由可能不连续的数据所组合而成的数据结构。 其中每个数据分为两部分,一部分是数据存储的位置,称为数据域,另外指针所存储的地方,称为指针域。单链表节点定义structstruct node{ int data; //存储链表数据 node *next; //存储结点的地址 node(int e=0,node *nextval=nullpte):data(e),next(nextval原创 2022-05-08 18:55:43 · 763 阅读 · 0 评论 -
面向对象程序设计——继承
继承继承介绍继承是类的重要特性。A类继承B类,我称B类为“基类”,A为“子类”。A类继承了B类之后,A类就具有了B类的部分成员,具体得到了那些成员,这得由两个方面决定:- 继承方式- 基类成员的访问权限三种继承方式比较公有继承方式(public)- 基类的私有成员,子类不可以访问- 基类的保护成员,子类可以继承为自己的保护成员,在派生类可以访问,在外部不可以访问。- 基类的公有成员,子类可以继承为自己的公有成员。在派生类可以访问,在外部也可以访问。保护继承(protected)原创 2022-05-08 18:50:30 · 1111 阅读 · 1 评论 -
面向对象程序设计——结构
结构结构体与指针指向结构的指针*直接定义指针变量:student sp;也可以在定义结构体类型同时定义指向结构体的指针struct 结构体类型名{ 字段声明;}*指针变量名;通过指针使用结构体给结构体指针赋值,如:sp = &s1;结构体指针变量的引用(*指针).成员。例如:(*sp).name指针->成员。例如:sp->name->是所有运算符中优先级最高的,通常程序员习惯使用第二种方法通过指针动态分配结构体空间和申请普通的动态原创 2022-05-08 18:44:21 · 397 阅读 · 0 评论 -
面向对象程序设计——静态成员与友元
静态成员与友元静态成员变量 类体中的数据成员的声明前加上static关键字,该数据成员就成为了该类的静态数据成员。和其他数据成员一样,**静态数据成员也遵守public/protected/private访问规则。**同时,静态数据成员还具有以下特点:静态数据成员实际上是类域中的全局变量。所以,静态数据成员的定义(初始化)不应该被放在头文件中。静态数据成员被类的所有对象所共享,包括该类派生类的对象。即派生类对象与基类对象共享基类的静态数据成员。静态数据成员可以成为成员函数的原创 2022-05-08 18:43:27 · 453 阅读 · 0 评论 -
面向对象程序设计——引用
引用1. 概论引用并非对象,相反的,它只是为一个已存在的对象所起的另外一个名字。引用必须进行初始化,定义了一个引用之后,对其进行的所有操作都是在与之绑定的对象上进行的。为引用赋值,实际上是把值赋给了与引用绑定的对象;获取引用的值,实际上是获取了与引用绑定的对象的值;以引用对象作为初始值,实际上是以与引用绑定对象的作为初始值。引用只能绑定在对象上,而不能与字面值或某个表达式的计算结果绑定在一起;引用的基本数据类型必须与引用对象的基本数据类型一样。如下面代码所示。原创 2022-05-08 17:24:57 · 431 阅读 · 0 评论 -
面向对象程序设计——类和对象
类和对象类的构成语法:class 类名 { private : 私有成员函数或数据成员 public : 公有成员函数或数据成员 protected : 被保护成员函数或数据成员 };//注意这里的分号; //类成员函数的定义可以直接置于类定义中的花括号内。此时,成员函数将被缺省为按内联方式处理类定义常见的两种形式: 类定义形式1:类界面和类实现分开。类实现在类外描述类外的成员函数定义,我们一般使用如下格式:返回值 类名:原创 2022-05-08 17:29:20 · 1578 阅读 · 0 评论 -
面向对象程序设计——指针
指针指针和一维数组1. 指针指向一维数组,当数组名使用 &a[i+1]==a+i+1 a[i+1]==*(a+i+1)//数组求和int main(){ int a[]{1,4,2,7,13,32,21,48,16,30}; int size=sizeof(a)/sizeof(*a); int n,sum,*ip; for(sum=0,n=0;n<size;n++) //下标法原创 2022-05-08 17:21:06 · 574 阅读 · 0 评论