上一页 1 ··· 72 73 74 75 76 77 78 79 80 ··· 95 下一页
摘要: 华为面试题及答案 1、局部变量能否和全局变量重名 答:能,局部会屏蔽全局。要用全局变量,需要使用"::" 局部变量可以与全局变量同名,在函数内引用这个变量时,会用到同名的局部变量,而不会用到全局变量。对于有些编译器而言,在同一个函数内可以定义多个同名的局部变量,比如在两个循环体内都定义一个同名的局部变量,而那个局部变量的作用域就在那个循环体内。 2、如何引用一个已经定义过的全局变量 答:extern 可以用引用头文件的方式,也可以用extern关键字,如果用引用头文件方式来引用某个在头文件中声明的全局变理,假定你将那个变写错了,那么在编译期间会报错,如果你用extern方式 阅读全文
posted @ 2012-09-10 20:51 byfei 阅读(2742) 评论(0) 推荐(0) 编辑
摘要: http://os.51cto.com/art/201005/200741.htm 阅读全文
posted @ 2012-09-10 15:29 byfei 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 在C/C++程序的编写中,当多个基本数据类型或复合数据结构要占用同一片内存时,我们要使用联合体;当多种类型,多个对象,多个事物只取其一时(我们姑且通俗地称其为“n 选1”),我们也可以使用联合体来发挥其长处。首先看一段代码:union myun {struct { int x; int y; int z; }u; int k; }a; int main() { a.u.x =4;a.u.y =5; a.u.z =6; a.k = 0; printf("%d %d %d\n",a.u.x,a.u.y,a.u.z);return 0;}union类型是共享内存的,以size最大 阅读全文
posted @ 2012-09-09 14:35 byfei 阅读(764) 评论(0) 推荐(0) 编辑
摘要: 在C/C++程序的编写中,当多个基本数据类型或复合数据结构要占用同一片内存时,我们要使用联合体;当多种类型,多个对象,多个事物只取其一时(我们姑且通俗地称其为“n 选1”),我们也 可以使用联合体来发挥其长处。首先看一段代码: union myun {s... 阅读全文
posted @ 2012-09-09 14:35 byfei 阅读(70) 评论(0) 推荐(0) 编辑
摘要: Extern的问题在于不知道这个关键词出现的时候到底是声明还是定义。谨记:声明可以多次,定义只能一次。函数的声明extern关键词是可有可无的,因为函数本身不加修饰的话就是extern的。但是引用的时候一样是需要声明的。而全局变量在外部使用声明时,extern关键词是必须的,如果变量无extern修饰且没有显式的初始化,同样成为变量的定义,因此此时必须加extern,而编译器在此标记存储空间在执行时加载如内存并初始化为0。而局部变量的声明不能有extern的修饰,且局部变量在运行时才在堆栈部分分配内存。引用性声明、定义性声明强符号、弱符号出现在linux的gcc链接分析中,可以加深链接的理解。 阅读全文
posted @ 2012-09-09 14:33 byfei 阅读(1031) 评论(0) 推荐(0) 编辑
摘要: 1.用于变量前,表示每次重新使用该变量所在方法、类或自定义类时,变量的值为程序这次运行最后一次为变量赋值时的值,这个方法称为静态函数:private void s(){static int a=1;a++;}方法第一次调用结束后a在内存内值为2;方法第一次调用结束后a在内存内值为3;2.在方法(函数)前用 static修饰,表示此方法为所在类或所在自定义类所有,而不是这个类的实例所有,这个方法称为静态方法:情况一:非静态方法:class t{t(....(参数,下面同)){~~~~(方法内容,下面同)}void s(....){~~~~}}当你在其他方法里调用这个类中的方法 s,则需先声明这个 阅读全文
posted @ 2012-09-09 14:30 byfei 阅读(453) 评论(0) 推荐(0) 编辑
摘要: 1:字符数组的逆序输出#include <stdio.h>#include <string.h>void swap(char *a){int i = 0;int len = strlen(a);for(i=0;i<(len/2);i++){char temp;temp = a[i];a[i] = a[len-i-1];a[len-i-1] = temp;}printf("%s/n",a);}int main(int argc,char *argv[]){char a[] = "abcd";char b[] = "a 阅读全文
posted @ 2012-09-09 14:26 byfei 阅读(342) 评论(0) 推荐(0) 编辑
摘要: #include <stdio.h>int main(void){int a,b,c,d;a = 3;b = 4;c = a,b;d = (a,b);printf("c = %d/n",c);printf("d = %d/n",d);return 0;}c = 3d = 4 阅读全文
posted @ 2012-09-09 14:24 byfei 阅读(158) 评论(0) 推荐(0) 编辑
摘要: #include <stdio.h>int *add(int a,int b){int c = 0; //原题没有这行int *p = NULL;p = &c; //原题没有这行*p = a+b;return p;}int main(void){printf("%d/n",*add(2,3)); return 0;} 阅读全文
posted @ 2012-09-09 14:21 byfei 阅读(313) 评论(0) 推荐(0) 编辑
摘要: //////////////////////////////////////////////顺序栈的初始化,建立,插入,查找,删除。 ////Author:Wang Yong ////Date:2010.8.19 //////////////////////////////////////////////#include <stdio.h>#include <stdlib.h>#define MAX 100 //定义最大栈容量typedef int ElemType;/////////////////////////////////////////////定义栈类型 t 阅读全文
posted @ 2012-09-09 14:18 byfei 阅读(447) 评论(0) 推荐(0) 编辑
上一页 1 ··· 72 73 74 75 76 77 78 79 80 ··· 95 下一页