`
chaotang0281
  • 浏览: 46211 次
  • 性别: Icon_minigender_2
  • 来自: 威海
社区版块
存档分类
最新评论
文章列表
平时用C或C++编程的人,一看perl,应该感觉特别灵活吧,怎么这么多格式呀。 在过程调用的时候,会涉及到C中所谓的形参。这个在perl中,是这样的  sub testPro {  my (@list1, @list2) = @_;  }     这是定义一个字过程,其中有@_, @_之意是,传递的当前参数的集合。当在子过程中调用传递的参数是,形式是: $_[0], $_[1] $_[0]表示函数的第一个参数 $_[1]表示函数的第二个参数 。 参考 @_ is the list of incoming parameters to a sub. So if you write a ...
vim 整体缩进反缩进 1、块选择(ctrl+v)2、缩进“=”3、反缩进“-=” 在进行缩进进,vim 可以自动识别他缩进的级别,所以不会像 vc那一缩进的时候,文本可以一直往右移。很方便的。  
今天在做鸟哥上的练习时,有这样一个修改密码的例子, echo "newpass" | passwd --stdin myuser1 (给myuser1赋一个新密码 newpass) 但是运行的时候出错, passwd 不支持--stdin,看来我的版本比较旧呀!那怎么修改密码呢,就用chpasswd chpasswd 可以读入未加密前的命令,且经过加密后写入/etc/shadow中。可以由标准输入读入数据。 故在不支持--stdin的时候,可以这样写 echo "myuser1:newpass" | chpasswd  这样就解决旧版本问题了 ...
今天学了一个shell script,看了鸟哥那本书,不过倒是有点和他书上的不太一样,可能是linux版本不同的问题吧! 1.在test中, 使用==代替=时出错。 可能直接在终端使用”=="可以,但是在脚本中就会报错, 所以还是使用 "="   2.在有function的脚本当中,使用sh shell.sh 执行时有错误 这时,请用chmod a+x shell.sh 把执行的权限赋予用户,然后 ./shell.sh 执行   3.在for循环时,使用(())报错。但我在网上看的例子,一试,也还是出错。。。未知why
如果查找第i小的元素,当然我们可以先排序,再得到第i个元素,是可以的,但有时候排序的话,时间复杂度往往很高,O(nlgn)或者O(n*n),下面看一下,不通过排序来查找第i小的元素。见算法导论第二版(186页) 先介绍两个函数,此函数的作用是将数组A【p, r】分成两部分,一部分大于A[r],一部分小于A[r],A[r]是分隔点。函数的返回值是A[r]元素在数组中的新位置。   PARTITION(A, p, r) { x<--A[r] i<--p-1 for j<--p to r-1 { if (A[j] <=x) { i ...
Bucket sort runs in linear time when the input is drawn from  a uniform distribution. Bucket sort assumes that the input is generated by a random process that distributes elements uniformly over the interval[0, 1). The algorithm is : (Our code for bucket sort assumes that the input is an n-element ...
Counting sort assumes that each of the n input elements is an integer in the range 0 to k.   The basic idea of counting sort is to determine, for each input element x, the number of elements less than x.This information can be used to place element x directly into its position in the output array. ...
堆排序的小例子,可以参考一下 #include <stdio.h> int parent(int i) { return i/2; } int left_child(int i) { return 2*i; } int right_child(int i) { return 2*i+1; } //n the range needed to sort void build_max_heap(int A[], int i, int n) // 数组A中,除A[i]外,其它元素是大顶堆 { int max = ...
我们在用C写程序的时候,往往会用到一些运行错误,我们想定位错误在哪,又不想调试,通过是用一系列的printf打印一些信息,如果打印的信息太多,我们可能又不容易定位到到底是哪个地方打印的,现在咱们可以使用几个宏定义来解决这个问题。 __FILE__ 是 当前程序运行的文件 __LINE__ 是当前程序运行所在的行 __FUNCTION__ 是当前程序运行所在的函数。 下面举一个例子吧! 我现在在D:\project 有一个b.c,下面是b.c的内容 #include <stdio.h> void fun() { printf("% ...
在dev c++ 环境中,写程序的时候,写了一个类,但是有点问题,想调试一下,但是调试的时候,老出现这个问题 your project does not have debugging info, do you want to enable debugging and rebuild your project? 在网上搜了一下解决方法 在 tools --> compiler options --> compiler, 有一个选项是: Add these commands to the linker command line 将此选项勾选,并将内容 添加为 -g3 -gsta ...
有时候写了一个C程序,感觉没什么错误,但老是报 segment fault错误!当然了,其中一方面是和内存相关的,看看你的指针有没有乱指之类的,不过我还遇到另一方面的,同样的问题,在网上一搜也有答案,就是printf(); 我们通常会利用printf()函数打印信息来帮助我们查找错误的原因,或者程序的执行流程,但当你的格式输出与后面的输出项不一致的时候,通常也会产生segment fault。如 我想输出一个字符串s, 这样写的时候,printf("%S", s);不小心写成了S,这样运行会出错,所以以后大家找不到错误的时候,就看看你的printf函数是不是出错了!
在写程序的时候,老是报错,说我free()函数错了。之前在学习的时候,知道是用了malloc 之类的时候,要用free()释放掉。为什么会出错呢,在网上搜了一下,说是程序越界。   比如:我这样  char  *p = (char *p) malloc(5*sizeof(char)); 但是我使用p的时候,用了大于5的空间,如  strcpy(p, "HelloWorld!"); 这个时候再释放的时候就会碰到free出错的问题。所以以后使用的时候一定要注意分配足够的空间 大家可以参考下面的这个链接 http:// ...
关于select 函数,网上有很多例子。函数原型是: int select(int n,fd_set * readfds,fd_set * writefds,fd_set * exceptfds,struct timeval * timeout); 有个参数是 readfds和writefds,我在调用这个函数的时候,两个都是设为非空,结果,运行老是出错,不是想要的结果。 所以在使用select 函数时, 这三个 fd_set 只能一个为非空,。 像这样调用,就得不到想要结果 : select(sockfd, rfds, wfds, ...
在用java开发的时候,用eclipse 的快捷键很方便就能注释了,在VC6.0中,应该也有吧,就在网上搜了一下,结果还真有。所以就拿来分享一下。原文地址在这,非常感觉作者。 http://wenku.baidu.com/view/47f70760ddccda38376bafd1.html  VC6.0中注释快捷键的设置2009-03-13 18:521.设置工具栏中变成注释按钮: 1.工具栏上右键 --> Customize      --> "Add-ins and Macro File"”tab页--> SAMPLE前面打上 ...
在linux命令行中,命令的参数有的时候是一个连字符,有的时候是两个连字符,有什么区别吗,今天在网上看了一下 转自:http://doc.chinaunix.net/linux/201003/456376.shtml    对于options类型参数可以有两种方式:   1)短选项(short options):顾名思义,就是短小参数。它们通常包含一个连字号和一个字母(大写   或小写字母)。例如:-s,-h等。   2)长选项(long options):长选项,包含了两个连字号和一些大小写字母组成的单词。例如,--   size,--help等。   *注:一个程序通常会 ...
Global site tag (gtag.js) - Google Analytics