ChinaUnix.net
相关讨论

list是个容器接口,可以理解为动态数组,传统数组必须定义好数组的个数才可以使用,而容器对象无须定义好数组下标总数,用add()方法即可添加新的成员对象,他可以添加的仅仅只能为对象,不能添加基本数据类型,容器还对应get(),remove()方法来获取和删除数据成员 list可以用序号来遍历,但通常推荐使用iterator来遍历 Iterator itr = list.iterator(); while (itr.hasNext()) { Object nextObj = itr.next(); } 如果要全部删...

by qhw - Java文档中心 - 2008-08-04 10:05:05 阅读(9621) 回复(2)

请问各位高手 va_list; va_start (va_list pvar ,void parmn); va_end (va_list pvar); 究竟是具体如何实现变换函数参数的? Thank u

by waitingfly - C/C++ - 2003-12-18 15:59:49 阅读(8074) 回复(7)

VA_list 是在c语言中解决变参问题的一组宏VA_list用法: (1)首先在函数里定义一具VA_list型的变量,这个变量是指向参数的指针 (2)然后用VA_START宏初始化变量刚定义的VA_list变量,这个宏的第二个参数是第一个可变参数的前一个参数,是一个固定的参数。 (3)然后用VA_ARG返回可变的参数,VA_ARG的第二个参数是你要返回的参数的类型。 (4)最后用VA_END宏结束可变参数的获取。然后你就可...

by wxju168 - Linux文档专区 - 2009-04-07 18:48:06 阅读(600) 回复(0)

以前在开发中为了对list,String[].Array进行元素的查找一般都是这样做: list lists = new list(); list.add("111"); ..... for(int i=0;i static void Main(string[] args) { //Prdicate用法 //第一种用法:[不创建显式的委托,也不创建指定泛型方法的类型参数] listOneMethod(); //Prdicate用法 //第二种用法:[创建显式的委托,也创建指定泛型方法的类型参...

by qhw - Java文档中心 - 2008-07-26 19:39:34 阅读(2338) 回复(0)

#include linux/module.h> #include linux/init.h> #include linux/list.h> #include linux/kernel.h> #include linux/fs.h> #include linux/cdev.h> #include asm/uaccess.h> #define DEVIcE_NAME "sky" #define DATAALIGN (sizeof(unsigned long) - 1) struct char_device { struct cdev cdev; dev_t devno; }; struct data_list { struct list_head list; unsigned int dlen; ...

by @sky - Linux文档专区 - 2008-05-12 15:07:28 阅读(1047) 回复(0)

我有一个函数的定义如下: void log(char *subject,char *title,int funcflag,char *fmt,...) 在函数体中我要调用fprintf将一些内容(fmt及其后面的东东)记录到文件中,除了如下的写法 { va_list ap; va_start(ap, fmt); vfprintf(flog,fmt,ap); va_end(ap) } 外有没有更简便的写法,比如 fprintf(flog,fmt,...)

by syncpk99 - C/C++ - 2004-03-18 16:11:09 阅读(1240) 回复(2)

对于stdarg.h里的几个参数,比如va_list等,还真不知道怎么用?到底是什么意思. 哪位指点一二.谢谢.

by vaaub - C/C++ - 2004-02-10 00:50:48 阅读(741) 回复(1)

我想写一个printf()的“包裹函数”,可是遇到下面问题 【code】 1 #include 2 #include 3 #include 4 5 void Tprintf(const char *format, ... ); 6 int main() 7 { char buf[]="test"; 8 int i = 10; 9 Tprintf("Hello world!\n"); 10 Tprintf("This is an application to test \"printf()\":%s %d\n",buf,i); 11 return 0; 12 } ...

by yysjacky - C/C++ - 2011-06-10 11:08:49 阅读(2296) 回复(3)

list_head结构的介绍 list_head结构定义在 里,它是一个double linked list的结构。 底下是它的结构宣告: struct list_head { struct list_head *next, *prev; }; 有的人可能看到这样的结构会觉得很奇怪这样的结构可以存放资料吗? 当然是不行的棉,因为这个结构根本是拿来让人当资料存的。 首先, 我们先来看看两个macro, #define list_HEAD(name) \ struct list_head name = { &name, &name } #define INIT_list_HEAD(ptr) do...

by gaofei8530 - Linux文档专区 - 2009-10-29 08:32:06 阅读(1289) 回复(0)

typedef char * va_list; #define _INTSIZEOF(n) ( (sizeof(n) + sizeof(int) - 1) & ~(sizeof(int) - 1) ) #define va_start(ap,v) ( ap = (va_list)&v + _INTSIZEOF(v) ) #define va_arg(ap,t) ( *(t *)((ap += _INTSIZEOF(t)) - _INTSIZEOF(t))) #define va_end(ap) ( ap = (va_list)0 ) high address |-----------------------------------| |函数返回地址 | |------------...

by liu1061 - C/C++ - 2008-09-28 21:31:20 阅读(2188) 回复(2)