Chinaunix
标题:
这个结构体,很奇怪!:(
[打印本页]
作者:
harryccf
时间:
2005-10-14 19:40
标题:
这个结构体,很奇怪!:(
static struct proto_ops bnep_sock_ops = {
family: PF_BLUETOOTH,
release: bnep_sock_release,
ioctl: bnep_sock_ioctl,
bind: sock_no_bind,
getname: sock_no_getname,
sendmsg: sock_no_sendmsg,
recvmsg: sock_no_recvmsg,
poll: sock_no_poll,
listen: sock_no_listen,
shutdown: sock_no_shutdown,
setsockopt: sock_no_setsockopt,
getsockopt: sock_no_getsockopt,
connect: sock_no_connect,
socketpair: sock_no_socketpair,
accept: sock_no_accept,
mmap: sock_no_mmap
};
release: bnep_sock_release
这里的family和 bnep_sock_release都是函数,怎么会有这种用法!
作者:
zalem
时间:
2005-10-14 20:00
标题:
这个结构体,很奇怪!:(
这个应该是gcc的扩展...
作者:
bleem1998
时间:
2005-10-14 20:03
标题:
这个结构体,很奇怪!:(
这。。。
难道DOS下的Turbo C不能这样用吗?
作者:
zalem
时间:
2005-10-14 20:14
标题:
这个结构体,很奇怪!:(
这个albcamus最有发言权
...
作者:
albcamus
时间:
2005-10-14 20:30
标题:
这个结构体,很奇怪!:(
原帖由 "bleem1998" 发表:
这。。。
难道DOS下的Turbo C不能这样用吗?
嘿,你怎么知道俺搞过这个知识点
to楼主:这个是gcc的扩展,为的是给一个结构体变量赋值时可以省略掉一些域。
后来C99也支持这一功能,不过语法不一样,于是gcc一并支持:
#include <stdlib.h>;
#include <stdio.h>;
#include <string.h>;
typedef struct student {
int age;
char name[1024];
int score;
} mystruct;
int main(void)
{
//GCC扩展用法
mystruct s1 = {
age: 21,
score: 60
};
printf("s1.age is %d\n", s1.age);
//C99用法
mystruct s2 = {
.score = 34
};
printf("s2.score is %d\n", s2.score);
return 0;
}
复制代码
作者:
1jjk
时间:
2005-10-14 20:51
标题:
这个结构体,很奇怪!:(
事在人为
我记得好象有这样的!
作者:
harryccf
时间:
2005-10-14 22:07
标题:
这个结构体,很奇怪!:(
谢谢,几位,兄弟了
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2