Classwork
AlexTan_
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
编译过程的五个阶段
编译程序的工作,从输入源程序开始到输出目标程序为止的整个过程,是非常复杂的。但就其过程而言,它与人们进行自然语言直接的翻译有许多相近之处。当我们把一种文字翻译为另一种文字,例如把一段英文翻译为中文时,通常需经下列步骤: (1)识别出句子中的一个个单词; (2)分析句子的语法结构; (3)根据句子的含义进行初步翻译; (4)对译文进行修饰; (5)写出最后的译文。 类似地,编译程序的工作转载 2016-04-25 23:36:34 · 19607 阅读 · 0 评论 -
链表,队列,堆栈
一. 链表 1.定义 链表(Linked list)是一种常见的基础数据结构,是一种线性表,但是并不会按线性的顺序存储数据,而是在由一个个节点组成,每个节点(node)中储存着数据变量(data)和指针变量(node next),又有一个头节点(head)连接下面的节点,而最后一个节点指向空(null)。可以在链表类中定义增加,删除,插入,遍历,修改等方法,故常用来储存转载 2016-04-26 23:28:17 · 1057 阅读 · 0 评论 -
printf,scanf、malloc、realloc、calloc(与c++的new的区别)的各种用法
printf,scanf、malloc、realloc、calloc(与c++的new的区别)的各种用法printf、scanf: printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输出信息。 printf()函数的调用格式为: printf(“<格式化字符串>”, <参量表>)。 格式输出,它是c语言中产生格式化输出的函数(在 stdio.h 中定义)。用于向终端(显示器转载 2016-04-29 20:06:09 · 979 阅读 · 0 评论 -
什么叫内存屏障、编译屏障、内存对齐
内存屏障、编译屏障:现代 CPU中指令的执行次序不一定按顺序执行,没有相关性的指令可以打乱次序执行,以充分利用 CPU的指令流水线,提高执行速度。同时,编译器也会对指令进行优化,例如,调整指令顺序来利用CPU的指令流水线。这些优化方式,大部分时候都工作良好,但是在一些比较复杂的情况可能会出现错误,例如,执行同步代码时就有可能因为优化导致同步原语之后的指令在同步原语前执行。内存屏障和编译屏障就是用来告转载 2016-04-29 20:15:11 · 4804 阅读 · 0 评论 -
进程与线程的区别
进程和线程的区别 进程: 进程是一个具有独立功能的程序关于某个数据集合的一次运行活动。它可以申请和拥有系统资源,是一个动态的概念,是一个活动的实体。它不只是程序的代码,还包括当前的活动,通过程序计数器的值和处理寄存器的内容来表示。 进程是一个“执行中的程序”。程序是一个没有生命的实体,只有处理器赋予程序生命时,它才能成为一个活动的实体。 线程: 通常在一个进程中可以包括若干个线程,它们可以利用转载 2016-04-17 11:33:14 · 594 阅读 · 0 评论 -
加锁
加锁锁的定义就是线程同步,避免多个线程 同时访问全局变量导致数据被破坏,某个线程加了锁之后,操作完再把锁释放,期间要是有其他线程想去访问被加锁的变量就需要先拿到锁,而锁没有释放的话,就只有等待,直到拥有锁的线程把锁释放,就表示可以操作它了。 就比如上WC,当一个人进去时一定要加上锁,这样其他人就进不去了,他出来时当然得开了锁再出来,然后WC就空闲了,其他人就可以进去了,这个WC就相当于是共享资源。转载 2016-04-18 18:49:58 · 1309 阅读 · 0 评论 -
c语言
C语言一、static,static inline,extern inline用法及定义 static: static在c里面可以用来修饰变量,也可以用来修饰函数。static修饰的变量储存在全局数据区。 static对全局变量的修饰,可以认为是限制了只能是本文件引用此变量。有的程序是由好多.c文件构成。彼此可以互相引用变量,但加入static修饰之后,只能被本文件中函数引用此变量。 stat转载 2016-04-20 12:33:04 · 830 阅读 · 0 评论 -
数据结构
数据结构什么是链表及链表的内存分配:链表是Linux内核中最简单、最普通的数据结构。链表是一种存放和操作可变量元素(常称为节点)的数据结构。链表和静态数组的不同之处在于,它所包含的元素都是动态创建并插入链表的,在编译时不必知道具体需要创建多少个元素。另外也因为链表中每个元素的创建时间各不相同,所以它们在内存中无须占用连续内存区。正是因为元素不连续地存放,所以各元素需要通过某种方式被连接在一起。于是每原创 2016-04-20 18:36:20 · 1705 阅读 · 0 评论 -
链表各类操作详解
链表概述 链表是一种常见的重要的数据结构。它是动态地进行存储分配的一种结构。它可以根据需要开辟内存单元。链表有一个“头指针”变量,以head表示,它存放一个地址。该地址指向一个元素。链表中每一个元素称为“结点”,每个结点都应包括两个部分:一为用户需要用的实际数据,二为下一个结点的地址。因此,head指向第一个元素:第一个元素又指向第二个元素;……,直到最后一个元素,该元素不再指向其它元素,转载 2016-04-21 20:50:34 · 776 阅读 · 0 评论 -
二叉排序树的C++实现,包括难点删除
#include using namespace std; struct node{ int num; node* Lnext; node* Rnext; }; //建立二叉排序树 class list{ public: list(); void node_insert();转载 2016-04-21 21:23:01 · 1016 阅读 · 0 评论
分享