单项选择题
对于通用搜索函数void*search(void*a,void*k,int n ,int m),参数n表示元素个数,m表示的是什么?()
A.要查找的数据
B.要查找的数据的数据元素的下标
C.要查找的数据的数据类型
D.要查找的数据的数据类型所占字节数
相关考题
-
单项选择题
要调用void swap(void *a ,void *b ,int size )函数交换两个字符串char *s1=strdup("hello");char *s2=strdup("world");调用语句为()。
A.swap(&s1,&s2,sizeof(void *));
B.swap(s1,s2,sizeof(void *));
C.swap(&s1,&s2,sizeof(char *));
D.swap(s1,s2,sizeof(char *)); -
单项选择题
对于通用搜索函数void*search(void*a,void*k,int n ,int m,int (*compare)(void *,void *)),假如有char*os[]={"dos","win","centos","ubuntu","mac"};char*k ="linux";cmp是一个比较函数,则正确的调用语句是()。
A.search(os,k,5,sizeof(char ),cmp);
B.search(os,k,5,sizeof(char ),cmp());
C.search(os,&k,5,sizeof(char *),cmp);
D.search(os,&k,5,sizeof(char *),cmp()); -
单项选择题
要实现通用队列,设计queue,定义类型为:typedef struct{void *buf;int front,rear;int max;int size;}queue;其中,buf为队列的首地址,front指向队头,rear指向对尾,max为队列容量,size为队列元素所占字节数。元素出队列的函数void out(queue *q ,void *val)的代码为()。
A.void *addr =(char *)q->buf +q->rear *q->size;memcpy(addr,val,q->size);q->rear++;
B.void *addr =(char *)q->buf +q->rear *q->size;memcpy(val,addr,q->size);q->rear++;
C.void *addr =(char *)q->buf +q->front *q->size;memcpy(addr,val,q->size);q->front++;
D.void *addr =(char *)q->buf +q->front *q->size;memcpy(val,addr,q->size);q->front++;
