导航

上一页 1 ··· 33 34 35 36 37

2011年12月20日

摘要: 最近一直在读《linux c 程序设计大全》(吴岳),收获颇丰啊。一,指针与别名直接上代码,代码一void f1(int*p,int*q){*p=2**q;}代码二,void f2(int*p,int*q){*p+=*q;*p+=*q;}这两段代码当然是第一个的效率高,代码一访问两次存储器,代码二访问四次存储器。不过这只是题外话^O^,真正要说的是这里面的陷阱。假设p指向a(a=3),q指向b(b=3),调用这两个函数的得到的功能一样,都变成了9,但是如果p和q同时指向a(a=3),这时调用f1,a变成了9,调用f2,则a变成了12!二,数组的指针,依然直接看代码#include<std 阅读全文

posted @ 2011-12-20 22:38 网名还没想好 阅读(547) 评论(0) 推荐(0) 编辑

2011年12月18日

摘要: 今天用extern突然发现了extern的另一个特点。比如,现在operator.c里面有个全局数组变量int arr[5],和三个函数f1,f2,f3.#include<stdio.h>#define MAX 5int arr[MAX]={2,3,4,5,6};int sum(){ int i,n;n=0;for(i=0;i<MAX;i++){ n+=arr[i];}return n;}int get_max(){ int max;int i;i=0;max=arr[i];for(i=0;i<MAX;i++){ if(arr[i]>max)max=arr[i]; 阅读全文

posted @ 2011-12-18 22:11 网名还没想好 阅读(252) 评论(0) 推荐(0) 编辑

摘要: 函数的本质是一段二进制代码,这些代码是可以直接被机器执行的指令。在翻译为汇编语言时,函数被翻译成一段相对独立的代码,并且使用函数名作为编号,表示此段代码的入口。当程序调用该函数时,只需要转到该入口就可以了。因此函数名的值等于内存中存储该代码段的首地址 函数在调用时会使进程空间中的栈不断增长,从当前进程空间中的栈顶的位置到函数保存返回地址的位置,这块内存称为函数的栈帧,所有函数的局部变量都保存在栈帧上,当函数结束调用时这块栈真就消失了,全局变量保存在数据段.下面看看怎么取出栈里的数据吧,#include<stdio.h>void fun(int a,...){ int *p=& 阅读全文

posted @ 2011-12-18 20:38 网名还没想好 阅读(293) 评论(0) 推荐(0) 编辑

2011年12月3日

摘要: 第一次在Linux下安装软件。作为一个对Linux没用过几天的人来说,学会了如何在Linux上安装软件也谈得上是一种收获。对于.tar.gz类型文件的安装的一般步骤如下(找到该文件,解压,配置,编译,安装):[yonghu@localhost ~]# su root[root@localhost ~]# cd /home/new/Desktop[root@localhost Desktop]# tar -xzvf fcitx-3.4.2.tar.gz[root@localhost Desktop]# cd /home/new/Desktop/fcitx-3.4.2[root@localho.. 阅读全文

posted @ 2011-12-03 23:28 网名还没想好 阅读(423) 评论(0) 推荐(0) 编辑

2011年11月30日

摘要: 假设创建一个COURSE表,create table dbo.COURSE(COURSENO int identity(1,1),CNAME varchar(30),CDATE varchar(20),)然后插入一行值,insert into dbo.COURSE values('Basic Accounting','11-JAN-89')然后又删除掉,delete from COURSE WHERE CNAME='Basic Accounting'然后又插入一行值,insert into dbo.COURSE values('Basic 阅读全文

posted @ 2011-11-30 11:31 网名还没想好 阅读(226) 评论(0) 推荐(0) 编辑

2011年11月27日

摘要: scanf函数是有返回值的,他的返回值是符合输入条件的数值个数。printf函数也有返回值,他返回的是字符的个数。比如#include<stdio.h>#include<stdlib.h>int main(){ int a=0; int i=0; int o[10]; for(;i<10;i++) { a=a+scanf("%d",&o[i]); } printf("%d",a);//输入10个数字后,显示10}又如#include<stdio.h>#include<stdlib.h>int 阅读全文

posted @ 2011-11-27 18:07 网名还没想好 阅读(123) 评论(0) 推荐(0) 编辑

摘要: 一,SQL语句执行顺序:FROM,WHERE,GROUP BY,HAVING,SELECT,ORDER BY。这意味着对于SELECT子句之前处理的那些句子,在SELECT中为其分配的别名并不存在。不如以下这就是无效应用的一个例子: SELECT order,YEAR(orderdate) AS orderyear FROM salary.orders WHERE orderyear>2006 二,NULL值。SQL使用的是三值谓词逻辑:TRUE,FALSE,UNKNOWN。SQL对查询过滤条件处... 阅读全文

posted @ 2011-11-27 18:05 网名还没想好 阅读(192) 评论(0) 推荐(0) 编辑

上一页 1 ··· 33 34 35 36 37