09 2013 档案
改进版1--编译目录下代码
摘要:#! /bin/bashfor file in ./*do t=${file#.*.} if [[ $t == "c" ]] then file=${file#./} target=${file%.c} gcc -o $target $file elif [[ $t == "cpp" ]] then file=${file#./} target=${file%.cpp} g++ -o $target $file fidone比上一个代码,改进了一点。这里有个问题,如果以后目录... 阅读全文
posted @ 2013-09-30 01:40 hrbust_09zhangyabin 阅读(124) 评论(0) 推荐(0) 编辑
shell程序---编译目录下全部.c或.cpp文件
摘要:今天大波又提起昨天我说的那个程序。这样的,起初我想写一个makefile,每次写完新代码后一键编译目录下所有的.cpp文件。原因是用makefile的话,每次要把目标文件加紧去才能编译。感觉不方便。想写一个makefile,一劳永逸。每次写完新代码后直接编译,不用再加入目标文件。但查了很多治疗,没发现能解决问题的代码。大波问我,干嘛不用shell写一个呢。所以,我暂时放弃makefile,用shell写了一个。实现的基本功能:编译目录下所有.c和.cpp文件。代码:#! /bin/bashfor file in ./*.cdoif [ -f $file ]thenfile=${file#./} 阅读全文
posted @ 2013-09-30 00:06 hrbust_09zhangyabin 阅读(1052) 评论(0) 推荐(0) 编辑
回车与换行的区别
摘要:转自:http://www.cnblogs.com/clarkchen/archive/2011/06/02/2068609.html区别一下回车和换行(\r和\n)。现在理解清楚了,记个笔记吧。符号 ASCII码 意义\n 10 换行NL\r 13 回车CR回车 \r 本义是光标重新回到本行开头,r的英文return,控制字符可以写成CR,即Carriage Return换行 \n 本义是光标往下一行(不一定到下一行行首),n的英文newline,控制字符可以写成LF,即Line Feed在不同的操作系统这几个字符表现不同,比如在WIN系统下,这两个字符就是表现的本义,在UNIX类系统,换行 阅读全文
posted @ 2013-09-23 23:48 hrbust_09zhangyabin 阅读(236) 评论(0) 推荐(0) 编辑
快速排序
摘要:思路清晰.思想:分治。效率:O(N*logN)#includeint part(int a[],int l,int r){ int temp,i,j; temp=a[l]; i=l; j=r; while(i=temp) j--; if(i<j) { a[i]=a[j]; i++; } while(i<j&&a[i]<=temp) i++; ... 阅读全文
posted @ 2013-09-23 22:57 hrbust_09zhangyabin 阅读(161) 评论(0) 推荐(0) 编辑
c的scanf为什么比c++的cin快
摘要:很早就知道,c的scanf(printf)比c++的快。刷题时尤其明显,在这上面超时是常有的事儿。但,这是别人告诉我的,c快。为什么快?从网上借鉴一个例子做个简单测试:1.cpp //向一个文件里输入1000000个随机数#include#include#includeusing namespace std;const int num=1000000;int main(){ ofstream file("data"); for(int i=0;i#include#include#includeusing namespace std;const int num=1000000 阅读全文
posted @ 2013-09-23 00:02 hrbust_09zhangyabin 阅读(4906) 评论(0) 推荐(2) 编辑
守护进程的配置文件
摘要:今天实现了一个守护进程的例子。碰到的第一个问题是,ubuntu下没有找到配置文件 /etc/syslog.conf首先,ubuntu的配置文件为/etc/rsyslog.conf,不再是/etc/syslog.conf。其次,编辑/etc/rsyslog.conf,在其中添加配置文件local2.debug /var/log/cisco.loglocal2.info /var/log/test.log然后重新启动一下syslog服务,sudo /etc/init.d/rsyslog restart,就回看见var/log中多出了cisco.log和test.log两个文件最后 编译运行下列代码 阅读全文
posted @ 2013-09-17 03:39 hrbust_09zhangyabin 阅读(302) 评论(0) 推荐(0) 编辑
怎么将vim的剪切版设置成系统的剪切版
摘要:如果你用vim敲完了代码,怎么把代码提交到ACMoj的粘贴版上呢。这是个问题。去网上查了一下,首先有人说可以在vimrc里面添加set clipboard=unnamed我试了一下,没有效果。另一种方法:“+y你现在可以在vim试一下:reg你会看到vim的很多寄存器。对,每条都是,很多寄存器里面的内容,你现在都可以看到了。第一条"" 后跟存储的内容。“1”2“3”/“-等等,但你可能发现此时没有"+,"*你需要sudo apt-get install vim-gnome 后,就会发现添加"+ ,"*以后,就可以用"+y把v 阅读全文
posted @ 2013-09-15 00:57 hrbust_09zhangyabin 阅读(305) 评论(0) 推荐(0) 编辑
写守护进程时碰到open函数的参数,没记住
摘要:今天写一个最简单的守护进程,要成为一个守护进程,其实很简单了。主要步骤就4步:1,创建进程。2,父进程退出。3,成为会话的头领进程。4,将工作目录改成根目录,并把标准输入输出重定向到空设备。在第4步代码: if(!noclose) { int fd; fd=open("/dev/null",O_RDWR,0); if(fd!=-1) ... 阅读全文
posted @ 2013-09-15 00:39 hrbust_09zhangyabin 阅读(287) 评论(0) 推荐(0) 编辑
猜socklen_t的原型
摘要:编写tcp时碰到这个类型,感觉他就是int型。百度了一下:typedef int socklen_t typedef int ssize_t我去/usr/include 下grep -r socklen_t * | grep typedef。只看到了typedef __socklen_t socklen_t;再接这去找__socklen_t,就看到了__STD_TYPE __U32_TYPE __socklen_t。我无法告诉自己我看到了socklen_t的准确定义。奇怪了 阅读全文
posted @ 2013-09-12 00:16 hrbust_09zhangyabin 阅读(478) 评论(0) 推荐(0) 编辑
关于内网和外网
摘要:欠下的知识总是要还的。内网可能是一个独立的局域网,通过其中的网关(网关就是连接两个网络的节点,说白了,就是有双重身份的电脑,既有局域网的IP地址,又有Internet的IP地址,两个IP地址分别捆绑在不同的网卡上)的代理访问外部网络,比如网吧都是这样实现的,其特征是:网吧内的电脑的ip都是局域网专用ip,比如192.168.xxx.xxx或者10.xxx.xxx.xxx,而这种ip在internet上面是不会出现的。 所谓代理,就是你提要求,他来办事,类似于代购火车票。局域网的电脑想和外面联络,就把对方地址告诉服务器,也就是网关,网关以自己的身份和对方联络,同时把对方发回来的消息转送给局域网内 阅读全文
posted @ 2013-09-01 20:02 hrbust_09zhangyabin 阅读(263) 评论(0) 推荐(0) 编辑


点击右上角即可分享
微信分享提示