摘要:
#include <iostream>#include <string>#include <list>using namespace std;//三个数相加求低位char add_gw(char a,char b,char c){ return ((a-'0')+(b-'0')+(c-'0'))%10+'0';}//三个数相加求高位char add_sw(char a,char b,char c){ return ((a-'0')+(b-'0')+(c-' 阅读全文
摘要:
这次实验做的东西不多,看得东西比较多,一开始容易发晕。这里赵博士的《注释》发挥了巨大作用,好好研习深有帮助啊。不多说,看实验:首先是内存跟踪,因为实验指导书写的实在是很详细,这里就不说了,也没什么好说的了;接下来是Ubuntu的内存共享:这里就是我觉得比较恶心的地方就是,网上得解决方案都不行;比如说用ftok函数生成key的那个,我试来试去就是过不了,网上也有说Linux这个函数会出错,唉,我就没对过。后来想到一个方法,就是用信号量把shm_id传过去,在下一个进程通过getvalue()得到shm_id,这样的话,完全大才小用了,但是,实在试不出来了,后来有人跟我说,直接给key赋值一个整数 阅读全文
摘要:
软件学院第四次实验的确有点小蛋疼,不过幸好做完了,为了纪念一下,决定写一篇小博文。(ps.每次去实验室,都有一种想死的感觉,不过也幸好去了一下,发现自己有很多概念不明白,现在明白了,给大家解释一下)先讲一讲信号量的原理吧,昨天晚上给室友讲了一下,觉得这个例子特别好,就是比如说有一个屋子10个房间里面都住着人(进程),但是只有3个厕所(资源),当然,每个人都想用厕所,并且自己用的时候不想让别人看着(这不是废话),于是,Posix就出现了,也就是信号灯,我用厕所的时候,我就先把厕所的灯(信号量的值)打开,如果有灯,则表示厕所被占用了,你一出房间门,发现亮了3盏灯,说明TMD已经没厕所了,又想上厕所 阅读全文
摘要:
什么是系统调用呢?系统调用和普通函数调用得区别:普通函数调用:调用自定义函数是通过call指令直接跳转到该函数的地址,继续运行。系统调用:调用一个系统得API(Application programming Interface)应用程序接口,通过API调用真正的系统调用;API调用系统调用的过程: 1. 把系统调用的编号存入EAX 2. 把函数参数存入其它通用寄存器 3. 触发0x80号中断(int 0x80)有点迷糊了吧,来看一下实验;首先,需要将两个函数原型改变一下:int iam(const char * name);int whoami(char* name, unsigned int 阅读全文
摘要:
很久没有写了,有点懒了,把两个实验写在一起:第一个是java通信:TCP和UDP协议的使用;先是UDP:UDP是一个广播式通信,所以不需要确定对方是否接受到,只要自己发送就可以了,有点像短信的发送:以下是用来接收的代码,放在一个线程里,不停的循环,对方发送的就可以收到:具体步骤:先新建一个DatagramSocket;之后通过DatagramPacket承接包;然后就是用receive方法接收;之后转化为String就可以了; 1 public void run(){ 2 try 3 { 4 Datagra... 阅读全文
摘要:
图的单源最短路径就是指,指定有向图的一个顶点,然后求得该顶点到达其它顶点的最短路;算法描述:void Dijkstra(C)/*对给定的有向图,求从原点1到其余每个顶点的最短路径长*/{S ={1};/*1为源点*/for(i =2 ;i <= n;i++){ D[i] = C[i][j];}for(i =1; i<=n-1;i++){ 从V-S中选择一个w(顶点),使得D[w]的值最小; 把w加入S; for(V-S中的每一个顶点v) { D[v] = min(D[v],D[w] +C[w][r]); }}}算法还是比较简单的;接下来实现: 1 #include <ios. 阅读全文
摘要:
两天写出来的还是有点慢;改善了代码风格,看起来应该不错吧。几点需要注意:JList需要用DefaultListModel类来处理里面的数据;浮点数的格式化用NumberFormat来处理;本来想用网格组布局的,后来发现,实在不是很容易布局这个,所以还是用绝对布局了;问价大小的话,还是用long型,如果是int型的话就很可能溢出;字符串处理还是有点不怎么会使,今后要多多努力,不然很难混啊。没了,代码因为要交上去,写了不少注释,看看吧。 1 import java.awt.event.ActionEvent; 2 import java.awt.event.FocusEvent; 3 imp... 阅读全文
摘要:
首先瞎说一些废话:因为Qt的环境很恶心,我从官网上下载花了16个小时还是只完成4%,所以,是不是资源有问题。接着对于vs2008和vs2010,至今没有看到Qt对于哪个支持的比较好,我的2008和2010对代码辨认轮番好使,真心不知道有什么地方出现问题。代码提示安装了一个VAssisX的VC插件,包含Qt路径中的include之后,于是,你可以看见犹如Eclipse的强大代码提示功能了。Qt的消息响应,其实就总结与消息与槽的映射:connect(sender,SIGNAL(signal),reciver,SLOT(slot));前两个参数分别是发出消息的对象和消息函数;后面两个参数分别是接受者 阅读全文