原帖由 coco520 于 2007-6-6 17:55 發(fā)表
vnifChar.Header.Type = NDIS_OBJECT_TYPE_MINIPORT_DRIVER_CHARACTERISTICS,
vnifChar.Header.Size = sizeof(NDIS_MINIPORT_DRIVER_CHARACTERISTICS);
誰知道這個逗號是遵循哪個C的標準?
原帖由 coco520 于 2007-6-7 09:55 發(fā)表
vnifChar.Header.Type = NDIS_OBJECT_TYPE_MINIPORT_DRIVER_CHARACTERISTICS,
vnifChar.Header.Size = sizeof(NDIS_MINIPORT_DRIVER_CHARACTERISTICS);
誰知道這個逗號是遵循哪個C的標準?
原帖由 converse 于 2007-6-7 10:25 發(fā)表
這個問題一點都不復雜嘛,就是原來你寫:
int i = 1,j = 1;
變成了:
int i = 1,
j =1;
原帖由 langue 于 2007-6-7 12:19 發(fā)表
兩者不同,并且根據(jù)常識判斷,此處的逗號是手誤,應作分號,盡管存在逗號表達式容許這句語句合法。
原帖由 langue 于 2007-6-7 12:19 發(fā)表
兩者不同,并且根據(jù)常識判斷,此處的逗號是手誤,應作分號,盡管存在逗號表達式容許這句語句合法。
原帖由 emacsnw 于 2007-6-7 10:03 發(fā)表
不就是逗號表達式嗎?
原帖由 converse 于 2007-6-7 10:25 發(fā)表
這個問題一點都不復雜嘛,就是原來你寫:
int i = 1,j = 1;
變成了:
int i = 1,
j =1;
原帖由 coco520 于 2007-6-7 12:47 發(fā)表
可是這里并不是變量聲明,而是結(jié)構(gòu)體賦值呀。
編譯可以通過,我想知道是不是C的語法允許的還是ddk的擴展。
原帖由 醉臥水云間 于 2007-6-7 12:34 發(fā)表
不合法,除非:
int i=0;
int j=0;
原帖由 langue 于 2007-6-7 12:50 發(fā)表
的確,編譯能通過是因為存在逗號表達式;這語句合法,但在某種意義上是程序員的手誤。
原帖由 coco520 于 2007-6-7 12:47 發(fā)表
可是這里并不是變量聲明,而是結(jié)構(gòu)體賦值呀。
編譯可以通過,我想知道是不是C的語法允許的還是ddk的擴展。
原帖由 langue 于 2007-6-7 12:50 發(fā)表
的確,編譯能通過是因為存在逗號表達式;這語句合法,但在某種意義上是程序員的手誤。
原帖由 jaffaz 于 2007-6-7 16:29 發(fā)表
定義變量的時候用到了逗號不能叫做逗號表達式吧
... In contexts where comma is given a special meaning, for example in lists of function arguments and lists of initializers, the required syntactic unit is an assignment expression, so ...
歡迎光臨 Chinaunix (http://72891.cn/) | Powered by Discuz! X3.2 |