06 2014 档案
摘要:在多线程编程中,常常需要从主线程传递参数给子线程或在主线程中获得子线程的计算结果,若使用全局变量实现,必然需要对临界区保护,因此导致大量的切换工作造成效率的低下;而利用进程间的参数传递可以解决这一问题。两个方向的参数传递:1.主线程向子线程传递参数:通过函数 int pthread_create(p...
阅读全文
摘要:Latex可以支持中文排版,如何实现中文支持可以到网上查找教程。下面编写一段对中文排版的Latex源文档:新建文件second.tex:\documentclass{article}\usepackage{CJK}\begin{CJK}{UTF8}{song}\begin{document}你好!\...
阅读全文
摘要:使用Latex可以排版出漂亮的论文,尤其适合对含有数学公式论文的排版。下面编写第一Latex源文件,实现对两个数学公式的排版:新建文件first.tex:\documentclass{article}\begin{document}\begin{equation}\sqrt{x^2+y^2}\end...
阅读全文
摘要:Hough变换的原理:将图像从图像空间变换至参数空间,变换公式如下:变换以后,图像空间与参数空间存在以下关系:图像空间中的一点在参数空间是一条曲线,而图像空间共线的各点对应于参数空间交于一点的各条曲线。下面使用Matlab实现Hough变换对图像中的直线划痕进行检测。close all;clear ...
阅读全文
摘要:下面使用极小值点阈值选取方法,编写MATLAB程序实现图像分割的功能。极小值点阈值选取法即从原图像的直方图的包络线中选取出极小值点,并以极小值点为阈值将图像转为二值图像clear all;close all ;G=imread('rabbit.png');figure();subplot(2,2,1...
阅读全文
摘要:Linux下有一个方便的c语言程序排版工具,只要选择恰当的参数,可以轻易地使自己的程序具有统一的风格。当然首先要安装indent,执行命令:apt-get install indentindent参数众多,可以自行查看man文档,下面是我个人使用的命令:indent -i2 -bli 0 -sob ...
阅读全文
摘要:编写程序(helloworld.c)并将其放到一个单独目录.helloworld.c:#includeint main(){ printf("hello world!\n"); return 0;}进入该目录,依次执行以下9步:1.新建Makefile.am,编辑内容为:bin_PROGRAMS=h...
阅读全文
摘要:本程序实现英文数字到中文大写数字的转换。主要思想是利用该语法自底向上地构造出1——>999999999999;然后将数字转换成中文大写。利用flex进行词法分析,bison进行句法分析。语法如下:e1-->one|two|three|four|five|six|seven|eight|nine e2...
阅读全文
摘要:proc为一个内核数据结构接口,用户空间和内核空间可以通过该接口通信,与普通文件不同的是,这些虚拟文件的内容都是动态创建的。proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间。它以文件系统的方式为访问系统内核数据的操作提供接口。用户和应用程序可以通过 proc得到系统的信息,并可以...
阅读全文
摘要:本程序实现数据拷贝。#include #include #include #include #include #include #define BUFSIZE 4096int main(int argc,char* argv[]){ if(argc!=1&&argc!=3) { ...
阅读全文
摘要:本程序实现从文件中提取连续4个以上的可打印字符。模仿linux中string命令#include #include#include #define BUFSIZE 4096void strings(FILE*fp);int main(int argc,char*argv[]){ FILE* f...
阅读全文
摘要:本程序实现在指定目录下递归查找无效的符号链接。1.设计思路逐个读取给定目录中的目录项,判断类型(1)若为目录,则读取该目录中的目录项并判断类型;(2)若为链接文件,则读取出其指向文件的名称(绝对/相对路径);若内容为绝对路径(以/开头),直接作为目标文件的路径;若内容为相对路径(不以/开头),将链接...
阅读全文
摘要:本程序实现从文件中随即选取一行,每行被选中的概率与改行长度成正比。程序用一次遍历,实现带权随机选取。算法:假设第i行权重wi(i=1...n).读取到文件第i行时,以概率wi/(w1+w2+...+wi)用该行替换上一轮被选中的行,直至读取文件结束。这样可以从数学上保证i行被选中的概率为wi/(w1...
阅读全文
摘要:此程序实现简化的linux中的tac命令。即对文件按行倒序输出。首先将文件指针置于文件尾,从后向前移动指针,将两个换行符'\n'间的内容作为一行输出。#include#include#include#include#include #include #define BUFSIZE 4096char ...
阅读全文
摘要:下面是用Matlab实现的Butterworth高通、低通滤波器。clc;clear all;close all;I=imread('cameraman.tif');subplot(3,2,1);imshow(I);title('原始图');f=double(I); % 数据类型转换,MAT...
阅读全文
摘要:本程序实现了egrep命令,首先将正则表达式转换为NFA,并实现模拟NFA的算法。本程序使用flex实现词法分析,bison实现语法分析若给定的一行字符串中存在一个字串能被该NFA接受,则输出整行。所用语法如下:S-->S|S |SS |S* |(S) |abison程序:%{#include #i...
阅读全文
摘要:下面代码需要插入到MFC项目中运行,实现了计算机图形学中的L系统分形树。class Node{public: int x,y; double direction; Node(){}};CString way[3] ;//提供三种生成规则CString rule,temprule;int ...
阅读全文
摘要:利用Matlab实现算术编解码过程,程序如下:clc,clear all;symbol=['abc']; pr=[0.4 0.4 0.2]; %各字符出现的概率temp=[0.0 0.4 0.8 1.0];orignal=temp;in=input('input a s...
阅读全文
摘要:下面这个程序利用命名管道实现进程间通信,模拟石头剪刀布游戏。主进程为裁判进程,两个子进程为选手进程。裁判与选手间各建立一个命名管道。进行100次出招,最后给出游戏胜负。#include #include#include#include#include#include#include#include#...
阅读全文
摘要:一个经典的条件变量与互斥锁的应用。程序如下:#include#include#includepthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;pthread_cond_t cond = PTHREAD_COND_INITIALIZER;struct ...
阅读全文
浙公网安备 33010602011771号