volcanol的工控博客
Email : lilinly225@126.com 索要资料加QQ 点击进入 或 点击左侧的资料分享专用帖

volcanol ---- View OF Linux Can Appreciate Nature OF Linux

天行健,君子以自强不息

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2013年4月27日

摘要: 前面贴了一段关于队列的源代码,也许细心的朋友会发现,其实那段代码存在一定的问题。就是最后如果出队后front指向队列尾部的时候;会出现异常。因此为了能够使用队列,则需要进行修改源代码。/** 本程序测试线性数据结构:队列*/#include <stdio.h>#include <stdlib.h>//***************************************0// 定义数据类型struct queueNode{ //如果rear ==-1 and front ==-1 则表示队列不存在 //队列不存在不能进行队列的任何操作 int* que... 阅读全文
posted @ 2013-04-27 13:59 volcanol 阅读(296) 评论(0) 推荐(0) 编辑

2013年4月26日

摘要: 其实,模式匹配的穷举法也可以改进,下面是经过改进后的代码。【Improve Version】 其中StrMatchImp()函数是经过改进后的函数。/* 本程序测试字符串的各种处理函数和操作*/#include <stdio.h>#include <stdlib.h>#include <string.h>//******************************************************0// 定义用户数据类型typedef long int LINT;typedef enum {FALSE,TRUE} BOOL;//****** 阅读全文
posted @ 2013-04-26 11:42 volcanol 阅读(352) 评论(0) 推荐(0) 编辑

2013年4月25日

摘要: 发现国内没有好的关于字符串处理的书籍,找了好久没有找到,不知道哪位大侠能介绍一本中文版的,英语的看的速度太慢。下面是我测试的字符串模式匹配源代码【Version 1】 这个测试的时候,受北大那个视屏的影响,这个调试了老久没成功。最终虽然也能运行了,但是感觉怪怪的。/* 本程序测试字符串的各种处理函数和操作*/#include <stdio.h>#include <stdlib.h>#include <string.h>//******************************************************0// 定义用户数据类型ty. 阅读全文
posted @ 2013-04-25 21:35 volcanol 阅读(324) 评论(0) 推荐(0) 编辑

2013年4月21日

摘要: 双链表与单链表的操作在很多地方都能用到。 循环链表的话,特殊应用也能用到,既可以用单链表实现循环列表,也能用双链表实现循环列表,用单链表节省存储空间,但是运算逻辑相对双链表要复杂,这就是通常说的以时间换空间。 单对时间要求严格时候也可:以空间换时间。 循环列表的代码不打算在园子里贴出来了,实现过程中需要注意的是:虽然头节点在建立循环链表之后,任何一个都可以看成是头节点,但是还是以创建时分配的第一个节点为宜,因为这样不会随时随地的找头节点,同时要注意的是:单节点的时候,需要自己指向自己以符合循环链表的定义,这个容易忽略。 下面是双链表的代码,运行测试结果在代码下面:/* 本程序用... 阅读全文
posted @ 2013-04-21 20:24 volcanol 阅读(274) 评论(0) 推荐(0) 编辑

摘要: /* 本程序用来测试线性存储结构:链表*/#include <stdio.h>#include <stdlib.h>//*************************************************// 定义处理字符的链表数据类型struct singlelink{ short int data; struct singlelink* next;};//单链表struct doublelink{ int data; struct doublelink* prenode; struct doublelink* postno... 阅读全文
posted @ 2013-04-21 12:52 volcanol 阅读(327) 评论(0) 推荐(0) 编辑

2013年4月20日

摘要: 程序代码编译可以通,未进行运行时测试。 /* 本程序测试线性逻辑结构:队列*/#include <stdio.h>#include <stdlib.h>struct queuelist{ int* queue; int front; int rear; int size;};typedef struct queuelist QUEUE;typedef enum {FALSE,TRUE} BOOL;void CreateQueue(QUEUE* queue,int size);BOOL IsQueueEmpty(QUEUE* queue);BOOL Is... 阅读全文
posted @ 2013-04-20 21:26 volcanol 阅读(368) 评论(0) 推荐(0) 编辑

摘要: 程序代码可以编译通过,未用数据进行测试。 /* 本程序测试线性数据结构:栈*/#include <stdio.h>#include <stdlib.h>struct StackNode{ int* stack; int Top; //从1开始计数 int Size;};typedef struct StackNode STACK;typedef enum {FALSE,TRUE} BOOL;void CreateStack(STACK* stack,int size);void InitStack(STACK* stack);BOOL IsStackEmpty... 阅读全文
posted @ 2013-04-20 17:55 volcanol 阅读(298) 评论(0) 推荐(0) 编辑

摘要: 本程序代码编译能通过,但是在main函数中未调用的函数没进行测试。/*本程序用来测试数据结构中的线性结构:顺序表*/#include <stdio.h>#include <stdlib.h>#define LINEAR_MAX_SIZE 64struct LinearList{ int* List; //顺序表指针 unsigned short int ListLen; //顺序表最大的元素个数 unsigned short int CurrentLen; //顺序表当前元素的个数};typedef struct LinearList LINEARLIST;typ... 阅读全文
posted @ 2013-04-20 15:20 volcanol 阅读(320) 评论(0) 推荐(0) 编辑

2013年4月16日

摘要: 三个排序算法:冒泡排序、插入排序、选择排序/* 本程序测试各种排序方法*/#include <stdio.h>#define SORTED 1#define NOTSORTED 0void BubbleSort(int* List,int ListLen);void BubbleSortF(int* list,int length);void EchoList(int* List,int ListLen);void Swap(int* x,int* y);void InsertSort(int* List,int ListLen);void SelectSort(int* Li.. 阅读全文
posted @ 2013-04-16 21:53 volcanol 阅读(486) 评论(0) 推荐(1) 编辑

2013年4月14日

摘要: 老长时间没有更新Windows程序设计的内容了,今天看了一段Windows程序设计文件操作的内容,同时想起鼠标操作还没有更新过文字,这里先就写一点关于鼠标文字吧。一、鼠标(1) Windows支持单键、双键和三键鼠标,还可以使用操纵杆或者光笔模拟鼠标。 1、判断系统是否存在鼠标 在使用鼠标之前必须判断系统中是否存在鼠标,可通过函数GetSystemMetrics来判断鼠标是否存在。 bMouse=GetSystemMetrics(SM_MOUSEPRESENT); 若安装了鼠标,则bMouse将返回TRUE,否则就返回0. 要点: Windows98中无论是否安装... 阅读全文
posted @ 2013-04-14 22:11 volcanol 阅读(607) 评论(0) 推荐(0) 编辑

2013年4月13日

摘要: 【字符编码】 在计算机系统中,所有的数据都经过编码进行处理。在计算机中有多种编码方式,最常见的有: 1、无符号编码: 基于二进制的编码,表示大于0或者等于0的数字 2、二进制补码:表示有符号整数的最常见形式。 可以表示负数、0、正数 3、浮点数编码:以2为基的表示实数的科学计数法; 浮点数的可以这么认为: 尾数*2^幂; 通过这个表达式我们可以基本看到浮点数在计算机中的存储模式。例如:在C语言中float型实数, Bit15.....bit9 bit8......bit0 bit15-bit9可以用来表示尾数,而Bit8....Bit0则可以表示2的幂次,然后通过系统换算就可以... 阅读全文
posted @ 2013-04-13 20:37 volcanol 阅读(464) 评论(0) 推荐(0) 编辑

2013年4月12日

摘要: 最近一直看这本书,发现里面的习题真的太经典了,很多习题看是简单,但是要真正的做好,还真需要费很大的事。【习题1.10】 这里我们先根据习题1.9的套路给出一个程序。/* 本程序用来将输入的制表符、退格符显式输出,将反斜杠以"\\"的形式输出*/#include <stdio.h>int main(int argc,char* argv[]){ short int Input; while(EOF !=(Input=getchar())) { switch(Input) { case '\t': put... 阅读全文
posted @ 2013-04-12 12:37 volcanol 阅读(429) 评论(6) 推荐(2) 编辑

2013年4月10日

摘要: 上一次的文字把Hello world程序说了一点,今天继续就习题说道说道。【1.5 字符输入/输出】 K&R的C书里面说过一段话: 1、标准输入输出库的输出模型: 无论文本从何处输入和输出,其输入和输出都是按照字符流处理。 2、文本流:文本流是由零行或者多行字符构成的字符序列,而每行文字则是由零个字符或者多个字符组成;而不管有没有字符,行末尾则是一个换行符。 标准库的输入和输出函数都按照这个规则处理。(1)回显输入的内容 我的测试代码,如上所示,测试情况如下所示, 这里有个问题,如果利用上面的代码我们如何输入 EOF 字符呢? 如上面的运行结果是:Ctrl + Z... 阅读全文
posted @ 2013-04-10 23:01 volcanol 阅读(351) 评论(2) 推荐(0) 编辑

2013年4月2日

摘要: 前天收到了K&R的中文版的书,期盼已久的书啊,心情有点小激动。【练习1-1】 在“Hello world”程序中制造混乱。 这个我倒不是很想做,因为我自己不是个制造混乱的人,虽然有时在写代码的时候不能由自己控制,我倒是希望能在代码中寻找 ladybug,嘻嘻。这里我们来看点别的:1、ELF 我们在Linux下面编译好后Hello world程序后,运行的过程很简单;但是我一直想探探,这里到底发生了什么。如果你对机器码比较精通,那么od可以帮你解决这个问题,可问题是我不明白,因此我需要“曲线救国”。 我是这么编译的: gcc -Wall hello.c -o hello 很... 阅读全文
posted @ 2013-04-02 21:42 volcanol 阅读(359) 评论(1) 推荐(1) 编辑

2013年3月31日

摘要: ---恢复内容开始--- 昨天买了一本书,K&R的《C程序设计语言》第二版,书的质量不错,淘宝买的,花了20大洋。 各位大神,怎么样? 书籍的内容第一章是如下的内容: 下面是这次要说的内容,是自己学习的笔记,贴出来供大家拍砖吐槽。 嘻嘻,我的字是不是很丑。 阅读全文
posted @ 2013-03-31 10:50 volcanol 阅读(230) 评论(0) 推荐(0) 编辑

2013年3月2日

摘要: 好久没来园子了,春节刚过完,现在面对大家最想说的一句话是:你相亲了吗?都说:孤独的男人玩dota,寂寞的女人穿丝袜。我想现在这个时代屌丝才会天天上QQ、逛校内、跑猫扑、走天涯,没事发几句牢骚,没事在微博追追某个名人;至于那些高富帅不是驾着法拉利兜风,就是开着保时捷泡妞,亦或者坐在捷豹上在高速路上狂飙。 记得是去年刚开博的时候,说了些关于Delphi的文字,里面提到了类Pascal语言SCL在工控领域的应用,鉴于目前从事工控的朋友对计算机感兴趣不多,或者说都认为那些关于计算机的内容太难,同时据我所知国内目前还没有一本关于SCL的教材,于是当时就着手开始编制一本教程;想着为同行提供一个方便的查.. 阅读全文
posted @ 2013-03-02 19:29 volcanol 阅读(1445) 评论(4) 推荐(2) 编辑

2013年1月27日

摘要: 不知道是ESET的问题,还是开发商的问题,我在千千静听官网下载的播放器、百度下载的百度影音和优酷下载的iKu软件,结果都被ESET报潜在威胁,这软件编写的让人蛋疼,不知道杀软和应用软件什么时候才能正常。 前面几天因为公司的事,忙的不行,也就没有及时更新文字,今天小休班,因此来园子了逛逛, 继续我的Java之旅,前面大体描述了一些Java的基础点,今天我们来讨论Java中的OOP。【OOP】 OOP? 什么是OOP,说实话,我也不明白,我估计也没有一个完整的非常严格的定义,OOP这个概念需要描述,不是简单的定义就能说明白的。 OOP:面向对象编程, 这里强调的是“对象”这个概念, 那什... 阅读全文
posted @ 2013-01-27 22:43 volcanol 阅读(1028) 评论(0) 推荐(1) 编辑

2013年1月6日

摘要: 我们知道,在C程序中,主入口函数(通常大家叫主函数,就是main()函数)可以获取系统传递给程序的参数,其主函数的定义形式如下:#include <stdio.h>int main(int argc;char* argv[]){ statement; return 0;} 在C中,main函数的形式参数: argv指针数组存储的是传递的参数的指针,argc存储的是主函数获取的参数的个数,即argc存储的是数组argv的index大小,并且argv[0]存储的是可执行程序的文件名(这个包括路径?嘻嘻,这里卖个关子)。 那么在Java中是否具有这样的机制呢?【Java的命令行... 阅读全文
posted @ 2013-01-06 21:49 volcanol 阅读(540) 评论(0) 推荐(0) 编辑

2012年12月30日

摘要: 前两天我在一个QQ群里面,看到一个群友发了一段“奇特的”C++代码,应该算是C++吧,我也说不准了。下面我们看看整个的讨论过程。 上面是我大体截取的部分对话过程,应该是连贯的,这里我就迷惑了,给他们一弄我动摇了,动摇的不是我对这个推理过程的认识,而是我无语的动摇了。 这里我对VTC_King同学的这种探索精神表示赞赏,俗话说:尽信书不如五书。 下面是我对这个程序的执行过程: 从上面的过程来看,程序如我所说,成功的编译,而且我开启的是-Wall编译选项;而且程序编译后成功执行,但是输出的结果也和我预想的一样,没有输出:Yes. 那么我们如何看这个过程呢? 为了弄明白这个过程,我可... 阅读全文
posted @ 2012-12-30 22:27 volcanol 阅读(2786) 评论(24) 推荐(3) 编辑

2012年12月29日

摘要: Java,为什么叫Java呢?貌似和Oak有关,也貌似与爪哇有关,这是为啥呢?说到这,让我想起了一首歌:不要问究竟。 前面篇简单文字,使自己有了部分入手的感觉,因此今天我们来看一些比轻微复杂的Java项。【Java 数组】 在Java中,也提供了与C/C++类似的数组的概念,在Java中数组强调的是Set的概念,即具有集合的特征。在Java中声明数组非常简单,语法格式如下所示: datatype array_name[];或者 datatype[] array_name; 这样声明的数组仅是定义数组名,并没有构造数组对象,为了构造数组对象,我们需要使用new操作符进行构造,... 阅读全文
posted @ 2012-12-29 12:54 volcanol 阅读(1069) 评论(0) 推荐(0) 编辑

2012年12月27日

摘要: 为什么会想学习Java呢,一句话: 书到用时方恨少。 要不是现场现在需要用到Java,我估计就不会学习这个了,现在才深刻的体会到:技不压身这句话的含义。学习的时候不要想到立竿见影的求效果,也许某一天她就用到了,而这个时候,也许你就比别人的路更宽广了。所以不要纠结这个东西有没有用了,学吧,骚年(本来是少年的,结果出现了这个词).........., 上两次说了一点Java的入门的东西,到这个程度,我们是否想要干点别的事情呢?因此我们需要来认识一下Java中结构化程序设计的部分:流程控制;以及数据的操作结构:运算符。【Java 赋值运算符】 为什么要说这个运算符呢? 因为太简单了,简单到必... 阅读全文
posted @ 2012-12-27 21:31 volcanol 阅读(791) 评论(0) 推荐(1) 编辑

2012年12月26日

摘要: 前面一课说了简单的整型数据和浮点型数据,但是没有说char字符类型,今天我们来说说char字符类型。【Java Char型】 在Java中提供了字符类型,与C/C++类似,Java中字符是经过编码的;Exp: 编码值==65的字符是'A';在Java中,使用的是Unicode编码格式。通常情况下,我们认为Unicode是16 bit的编码规则。 但是很多童鞋们,还是不明白这个东西,我自己也有点迷糊。下面是我摘录的部分度娘知道的回答: 如果按照编码规则来看,这个赋值是兼容的。 输出的时候系统是根据“数值”的类型来判断的,正如上面说的,当用System.out.println(nu 阅读全文
posted @ 2012-12-26 21:24 volcanol 阅读(1638) 评论(3) 推荐(1) 编辑

2012年12月18日

摘要: 首先说一下,为什么学习Java。主要是因为要用到这个东西,现场有一个设备,ABB的板型仪,里面用的是Java做的后台 ,利用Java服务器与DSP芯片做数据采集分析功能,DSP进行高速数据采集,然后用Java做数据分析。所以需要想学习这个东西,来了解DSP和Java通讯,以及和Win32平台通讯的一些相关内容。【Java外壳类】 我感觉这个Java和C#有点类似,首先什么也不管,就需要定义一个类。我们首先来看这个类。 1 /* 2 This program test the basic data type 3 4 1、boolean 5 2、byte 6 3、short 7 ... 阅读全文
posted @ 2012-12-18 21:53 volcanol 阅读(693) 评论(1) 推荐(0) 编辑

2012年12月13日

摘要: 写这些文字的目的是为了给像我一样的想学习Java的非计算机专业的人员提供一个简单明了和快速安装Java的方法,这里提到的可能微不足道,但是我想通过这些文字,给像我这样的菜鸟一个入门的机会。很多的教程都是很简单的说明这个问题,而我经常看到一些人在QQ上面询问一些关于Java安装、下载以及简单配置的问题,加上我自己也走了一点弯路,因此在这里将自己的总结和体会分享给非计算机专业的人员,希望能提供一点帮助。 Java是一个Sun开发和支持的系统,现在由于Sun加入到Oracle后,现在Java的JDK和JRE系统由Oracle提供支持。如果需要安装Java系统,我们可以到Java项目的网站链接上... 阅读全文
posted @ 2012-12-13 20:44 volcanol 阅读(4959) 评论(9) 推荐(3) 编辑

摘要: 为什么要写在这里唠叨Java呢,做为一个从事自动化行当的农民工,我对计算机有着特殊的喜好,基本没事就会到各大计算机相关论坛晃荡;而因为最近有接触一个设备:ABB公司设计制造的应用于冷连轧机组的板型仪。这套系统还是和我以前见过的某些设备一样,用的是很简单的程序设计语言,Java与汇编、C语言那样复杂的语言比较起来个人感觉应该算是比较简单的了;但是我们不应该轻视任何一个语言,即便她很“简单”,这套板型仪用了一个服务器、2个客户机的架构(这个我目前还不确定;因为我还不了解)。 下面这些文字,也许在各位Java大神的眼里,根本算不了什么,但是对于我来说,却是感觉力不从心。首先就安装JavaSDK... 阅读全文
posted @ 2012-12-13 18:53 volcanol 阅读(456) 评论(0) 推荐(0) 编辑

volcanol ----View OF Linux Can Appreciate Nature OF Linux。