- 博客(8)
- 收藏
- 关注
原创 线程的介绍
线程描述: 程序中多个执行路线叫做线程。线程是一个进程内部的一个控制序列。所有的进程都至少有一个执行线程。线程的实现方式内核级线程用户级线程组合级线程linux中线程的实现从内核角度讲,linux并没有线程概念。linux把所有线程当作进程来实现,并无特别的调度算法或定义特别的数据结构来表征线程。相反,线程仅仅被视为一个与其他进程共享某些资源的进程。每个线程都拥有唯一隶属于自己的task_struct,所以在内核中,它看起来就像是一个普通的进程(只是线程和其他一些进程共享某些资源,如地址空
2021-12-02 23:08:19
164
原创 进程间通信
进程间通信(ipc)哪些是进程间通信: 信号量 共享内存 消息队列 套接字 管道通信方式:单工的:a->b,电台到收音机,单向的; 半双工的:a<->b,同一时刻a要么是发出者要么是接收者 全双工的:收和发是同时进行的,例如:打电话管道管道的特点1.管道文件是在内存中分配空间(即运行速度快),它有读端r,写端w。2.管道为空,读会阻塞,;管道写满,写会阻塞3.管道的写端关闭,读端返回为0;4.管道读端关闭,写端写入数据触发异常(内核就会通过信号
2021-12-02 23:07:09
82
原创 数组和指针
数组一个数组的类型是由其元素的类型和数量决定的。在描述一个数组的时候我们一定要描述出他的类型和数量。例如:int a[10]={}定义了一个int型的10个元素的数组。数组的定义决定了数组名.元素类型以及元素的个数 。参照上一个例子ar表示的是该数组的首地址。void fun(int *b,int n){}int main(){ int a[10]={};fun(a,10);}//此处传进去的是首地址,由于数组是由数组名,元素个数构成,所以此处也要给与一个个数n...
2021-04-26 20:43:35
87
原创 分支 循环 switch
bool类型bool只有true和false;在c语言中0是false,其他情况(非0)都为truebool类型占一个字节,但是一个字节有8位,但是bool类型只有1位可用。因此可见,它要么是0,要么是1。关系表达式**:运算结果是bool值**关系运算符:< ,<=,>,>=,优先级大于,==,!=关系运算符都是双目运算符,其结合性都是左结合。关系运算符的优先级低于算术运算符高于赋值运算符 注意**==才表示等于比较,=表示赋值**下面这样的代码就有冲突int a=
2021-04-21 20:00:03
100
原创 冒泡排序
冒泡排序冒泡排序的思想是通过相邻两位的数值比较,将最大(最小)的数据放在末尾。这样通过不断地两两比较,每次最大(数据)都会放在末尾,即能得到由小到大(由大到小)的排序。int main(){ srand(time(NULL)); int num[100] = {}; for (int i = 0; i < 100; ++i) { num[i] = rand() % 100 + 1; } for (int i = 0; i < 99; ++i) { for (int
2021-04-19 10:21:10
53
原创 结构体,文件,关键字
结构体c语言中,结构体是一种类型(由程序员自己设计的类型)struct Student{char s_id[10];char s_name[10];char s_sex[5];int s_age;};int main(){struct Student stud1={"202001","tulun","man",15};//sizeof(stud)//使用.访问结构体变量的成员printf("id:%s\n",stud.s_id);printf("name:%s\n",stud.
2021-04-17 12:31:46
176
原创 作用域生存期运算符取模
作用域和生存期作用域(可见性)指标识符能够被使用的范围;只有在作用域内标识符才可以被使用。此阶段针对编译和链接过程(1)函数中定义的标识符,包括形参和函数体中定义的变量,作用域都在函数体内,也称作函数域。(2)文件作用域也称全局作用域。定义在所有函数之外的标识符,具有文件作用域,作用域为从定义处到整个源文件结束。文件中定义的全局变量和函数都具有文件作用域。生存期也叫生命期。此阶段针对程序的执行过程生命期指的是标识符从程序开始运行时被创建,具有存储空间,到程序运行结束时消亡,释放存储空间的时间段。
2021-04-14 09:33:05
49
原创 常量变量字符常量
首先需明确定义和声明的区别定义:为此变量分配一个内存并给它起名字。变量和它的变量名同生共死。他的内存位置也不会再发生改变。声明:1.告诉编译器,这个名字已经匹配到一块内存上了。2.告诉编译器,这个名字已经被我预定了,别的地方再也不能用它作为变量名。而这最大区别在于,定义是给它分配内存空间了的,而声明并没有给它分配内存空间变量变量的特点就是可读且可写。变量包含两个方面 类型和名称变量分为全局变量,局部变量,块变量。全局变量定义在函数之外,其作用范围适用于所有在其定义位置以下的都可以用此变量,
2021-04-12 20:33:52
127
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人