c/c++void¼°voidÖ¸ÕëÀàÐÍ
c/c++void¼°voidÖ¸ÕëÀàÐÍ
¡¡¡¡1.¸ÅÊöÐí¶à³õѧÕß¶ÔC/C++ÓïÑÔÖеÄvoid¼°voidÖ¸ÕëÀàÐͲ»ÉõÀí½â£¬Òò´ËÔÚʹÓÃÉϳöÏÖÁËһЩ´íÎó¡£±¾ÎĽ«¶Ôvoid¹Ø¼ü×ÖµÄÉî¿Ìº¬Òå½øÐнâ˵£¬²¢ÏêÊövoid¼°voidÖ¸ÕëÀàÐ͵ÄʹÓ÷½·¨Óë¼¼ÇÉ¡£
¡¡¡¡2.voidµÄº¬ÒåvoidµÄ×ÖÃæÒâ˼ÊÇ“ÎÞÀàÐÍ”£¬void *ÔòΪ“ÎÞÀàÐÍÖ¸Õ딣¬void *¿ÉÒÔÖ¸ÏòÈκÎÀàÐ͵ÄÊý¾Ý¡£
¡¡¡¡void¼¸ºõÖ»ÓГעÊÍ”ºÍÏÞÖÆ³ÌÐòµÄ×÷Óã¬ÒòΪ´ÓÀ´Ã»ÓÐÈ˻ᶨÒåÒ»¸övoid±äÁ¿£¬ÈÃÎÒÃÇÊÔ×ÅÀ´¶¨Ò壺
¡¡¡¡void a;
¡¡¡¡ÕâÐÐÓï¾ä±àÒëʱ»á³ö´í£¬Ìáʾ“illegal use of type 'void'”¡£²»¹ý£¬¼´Ê¹void aµÄ±àÒë²»»á³ö´í£¬ËüҲûÓÐÈκÎʵ¼ÊÒâÒå¡£
¡¡¡¡voidÕæÕý·¢»ÓµÄ×÷ÓÃÔÚÓÚ£º
¡¡¡¡£¨1£©¶Ôº¯Êý·µ»ØµÄÏÞ¶¨£»
¡¡¡¡£¨2£© ¶Ôº¯Êý²ÎÊýµÄÏÞ¶¨¡£
¡¡¡¡ÎÒÃǽ«ÔÚµÚÈý½Ú¶ÔÒÔÉ϶þµã½øÐоßÌå˵Ã÷¡£
¡¡¡¡ÖÚËùÖÜÖª£¬Èç¹ûÖ¸Õëp1ºÍp2µÄÀàÐÍÏàͬ£¬ÄÇôÎÒÃÇ¿ÉÒÔÖ±½ÓÔÚp1ºÍp2¼ä»¥Ïำֵ£»Èç¹ûp1ºÍp2Ö¸Ïò²»Í¬µÄÊý¾ÝÀàÐÍ£¬Ôò±ØÐëʹÓÃÇ¿ÖÆÀàÐÍ
¡¡¡¡×ª»»ÔËËã·û°Ñ¸³ÖµÔËËã·ûÓұߵÄÖ¸ÕëÀàÐÍת»»Îª×ó±ßÖ¸ÕëµÄÀàÐÍ¡£
¡¡¡¡ÀýÈ磺
¡¡¡¡float *p1;
¡¡¡¡int *p2;
¡¡¡¡p1 = p2;
¡¡¡¡ÆäÖÐp1 = p2Óï¾ä»á±àÒë³ö´í£¬Ìáʾ“'=' : cannot convert from 'int *' to 'float *'”£¬±ØÐë¸ÄΪ£º
¡¡¡¡p1 = (float *)p2;
¡¡¡¡¶øvoid *Ôò²»Í¬£¬ÈκÎÀàÐ͵ÄÖ¸Õë¶¼¿ÉÒÔÖ±½Ó¸³Öµ¸øËü£¬ÎÞÐè½øÐÐÇ¿ÖÆÀàÐÍת»»£º
¡¡¡¡void *p1;
¡¡¡¡int *p2;
¡¡¡¡p1 = p2;
¡¡¡¡µ«Õâ²¢²»Òâζ×Å£¬void *Ò²¿ÉÒÔÎÞÐèÇ¿ÖÆÀàÐÍת»»µØ¸³¸øÆäËüÀàÐ͵ÄÖ¸Õë¡£ÒòΪ“ÎÞÀàÐÍ”¿ÉÒÔ°üÈÝ“ÓÐÀàÐÍ”£¬¶ø“ÓÐÀàÐÍ”Ôò²»ÄܰüÈÝ“ÎÞÀàÐÍ”¡£µÀÀíºÜ¼òµ¥£¬ÎÒÃÇ¿ÉÒÔ˵“ÄÐÈ˺ÍÅ®È˶¼ÊÇÈË”£¬µ«²»ÄÜ˵“ÈËÊÇÄÐÈË”»òÕß“ÈËÊÇÅ®ÈË”¡£ÏÂÃæµÄÓï¾ä±àÒë³ö´í£º
¡¡¡¡void *p1;
¡¡¡¡int *p2;
¡¡¡¡p2 = p1;
¡¡¡¡Ìáʾ“'=' : cannot convert from 'void *' to 'int *'”¡£
¡¡¡¡3.voidµÄʹÓÃ
¡¡¡¡ÏÂÃæ¸ø³övoid¹Ø¼ü×ÖµÄʹÓùæÔò£º
¡¡¡¡¹æÔòÒ» Èç¹ûº¯ÊýûÓзµ»ØÖµ£¬ÄÇôӦÉùÃ÷ΪvoidÀàÐÍ
¡¡¡¡ÔÚCÓïÑÔÖУ¬·²²»¼Ó·µ»ØÖµÀàÐÍÏÞ¶¨µÄº¯Êý£¬¾Í»á±»±àÒëÆ÷×÷Ϊ·µ»ØÕûÐÍÖµ´¦Àí¡£µ«ÊÇÐí¶à³ÌÐòԱȴÎóÒÔΪÆäΪvoidÀàÐÍ¡£ÀýÈ磺add ( int a, int b )
¡¡¡¡{
¡¡¡¡return a + b;
¡¡¡¡}
¡¡¡¡int main(int argc, char* argv[])
¡¡¡¡{
¡¡¡¡printf ( "2 + 3 = %d", add ( 2, 3) );
¡¡¡¡}
¡
Ïà¹ØÎĵµ£º
±¾ÎĹؼü´Ê£º c++ º¬Òå
1.ÒýÑÔ
C++ÓïÑԵĴ´½¨³õÖÔÊÇ“a better C”£¬µ«ÊÇÕâ²¢²»Òâζ×ÅC++ÖÐÀàËÆCÓïÑÔµÄÈ«¾Ö±äÁ¿ºÍº¯ÊýËù²ÉÓõıàÒëºÍÁ¬½Ó·½Ê½ÓëCÓïÑÔÍêÈ«Ïàͬ¡£×÷ΪһÖÖÓûÓëC¼æÈݵÄÓïÑÔ£¬C++±£ÁôÁËÒ»²¿·Ö¹ý³ÌʽÓïÑÔµÄÌØµã£¨±»ÊÀÈ˳ÆÎª“²»³¹µ×µØÃæÏò¶ÔÏ󔣩£¬Òò¶øËü¿ÉÒÔ¶¨Òå²»ÊôÓÚÈκÎÀàµÄÈ«¾Ö±äÁ¿ ......
·¢ÐÅÈË: RoachCock (·´¶¯Ñ§ÊõȨÍþ), ÐÅÇø: CPlusPlus
±ê Ìâ: extern "C" ÔĶÁ±Ê¼Ç
·¢ÐÅÕ¾: ˮľÉçÇø (Fri Mar 7 00:22:47 2008), Õ¾ÄÚ
±¾ÒÔΪºÜ¼òµ¥£¬×ÐϸÔĶÁÁËһϠC++ ±ê×¼£¬·¢ÏÖÄÚÈÝ»¹²»ÉÙ¡£×ܽáÁËһϡ£
Òªµã£º
º¯ÊýÀàÐÍ£¬º¯ÊýÃû£¬±äÁ¿Ãû¾ßÓÐÓïÑÔÁ´½ÓÐÔ£¬language linkage¡£
ÓïÑÔÁ´½ÓÐÔ¿ÉÄÜ»áÓ°Ïìµ½ ......
ÄÚºËÆô¶¯µÄÏÖÔÚÒѾÊÇ¿ªÊ¼Ö´Ðк¯Êýstart_kernelº¯ÊýÁË¡£start_kernelº¯ÊýÔÚinit/main.cÖж¨Òå¡£start_kernelº¯ÊýÖ»ÊÇÍê³É
ÏàÓ¦µÄ½á¹¹µÄ³õʼ»¯ÈÎÎñ¡£
printk(KERN_NOTICE);
printk(linux_banner);
setup_arch(&command_line);
ÔÚubootµÄÒ»Ö±¹ý³ÌÖУ¬uboo ......
×ÖËÑË÷¾ÍËÑË÷Ò»¸öÊýÖоßÓÐÄ³Ð©ÌØÕ÷µÄλ¡£ÊµÏÖÈçÏ£º
/* wsearch.c£º×ÖËÑË÷ */
/* ´Ó×ó±ßѰÕÒµÚÒ»¸ö0×Ö½Ú£ºµÚ0(1,2,3)¸ö×Ö½ÚÊÇ0ʱ£¬·µ»Ø0(1,2,3)£¬·ñÔò·µ»Ø4 */
int zbytel(unsigned x){
if((x>>24)==0) return 0;
else if((x & 0x00ff0000)==0) return 1;
else if((x & 0x0000ff00)==0) r ......