Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

C ÖÐ extern ºÍ static

CÓïÑÔÖУº
extern £ºextern£¨ÍⲿÒýÓã©¿ÉÒÔÖÃÓÚ±äÁ¿»òÕߺ¯Êýǰ£¬ÒÔ±êʾ±äÁ¿»òº¯ÊýµÄ¶¨ÒåÔÚ±ðµÄÎļþÖУ¬ÔÚÒ»¸öÎļþÖÐÓõ½µÄexternÕâЩ±äÁ¿»òº¯ÊýÊÇÍâÀ´µÄ£¬²»ÊDZ¾Îļþ¶¨ÒåµÄ£¬Ìáʾ±àÒëÆ÷Óöµ½´Ë±äÁ¿ºÍº¯ÊýʱÔÚÆäËûÄ£¿éÖÐѰÕÒÆä¶¨Òå¡£×¢Ò⣬ֻÓÐÆäËûÎļþÖеÄÈ«¾Ö±äÁ¿²ÅÄܱ»ÆäËûÎļþËùextern¡£
extern int val;
×¢£º
      ´Ë´¦µÄº¯ÊýÀàÐÍ¿ÉÒÔÊ¡ÂÔ£¬¼´extern val;
      ÒòΪexternµÄ×÷ÓþÍÊǸæËß±àÒëÆ÷Õâ¸ö±äÁ¿ÊÇÔÚÆäËûÎļþÖж¨ÒåµÄ£¨ÊÇÍâÔ®£©¡£±àÒëÆ÷ÊÇÏàÐÅ×Ô¼ºÈ˵ģ¬ËùÒÔÔÚ±àÒëµÄʱºòÒªÊÇ¿´µ½val±äÁ¿Ê±»áÈÏΪËüÊÇ´æÔÚ£¬²»»á±¨´í¡£Ö»ÓÐÔÚÁ´½ÓµÄʱºòÁ´½ÓÆ÷²Å»áÈ¥ÆäËüobjÎļþÖÐѰÕÒval±äÁ¿µÄ¶¨Ò壨µØÖ·£©£¬ÕÒµ½Ôò˳ÀûÁ´½Ó£¬·ñÔò±¨´í¡£ÒòΪ±àÒëÆ÷Ö»ÐèÒªÖªµÀexternËùÉùÃ÷±äÁ¿µÄÃû×־ͿÉÒÔÁË£¬ËùÒÔextern int val ¿ÉÒÔд³É extern val(¼´Ê¡ÂÔ±äÁ¿ÀàÐÍ)¡£ 
      ÖÁÓÚ extern“C”µÄÓ÷¨£¬ Ò»°ãÈÏΪÊôÓÚ C++µÄ·¶³ë¡£externÊÇC/C++ÓïÑÔÖбíÃ÷º¯ÊýºÍÈ«¾Ö±äÁ¿×÷Ó÷¶Î§£¨¿É¼ûÐÔ£©µÄ¹Ø¼ü×Ö£¬µ«ÔÚC++ÖÐΪÁ˼æÈÝÃæÏò¹ý³ÌÓïÑÔ£¨C£©£¬À©Õ¹ÁËextern¹¦ÄÜ¡£
static : ÔÚCÖУ¬static£¨¾²Ì¬µÄ£©Ö÷ÒªÓÐÁ½¸ö×÷Ó㺠ÐÞÊαäÁ¿ºÍÐÞÊκ¯Êý¡£ÔÚC++ÖУ¬static¹¦Äܵõ½ÁËÀ©Õ¹¡£
µÚÒ»¸ö×÷ÓãºÐÞÊαäÁ¿¡£±äÁ¿ÓÖ·ÖΪ¾Ö²¿ºÍÈ«¾Ö±äÁ¿£¬µ«ËüÃǶ¼´æÔÚÄÚ´æµÄ¾²Ì¬Çø(È«¾ÖÇø)¡£
¡ñ¾²Ì¬È«¾Ö±äÁ¿£¬×÷ÓÃÓò½öÏÞÓÚ±äÁ¿±»¶¨ÒåµÄÎļþÖУ¬ÆäËûÎļþ¼´Ê¹Óà externÉùÃ÷Ҳû·¨Ê¹ÓÃËû¡£×¼È·µØËµ×÷ÓÃÓòÊÇ´Ó¶¨ÒåÖ®´¦¿ªÊ¼£¬µ½Îļþ½áβ´¦½áÊø£¬ÔÚ¶¨ÒåÖ®´¦Ç°ÃæµÄÄÇЩ´úÂëÐÐÒ²²»ÄÜʹÓÃËü¡£ÏëҪʹÓþ͵ÃÔÚÇ°ÃæÔÙ¼Ó extern *** »ò¸É´à¶¨ÒåÔÚÎļþ¶¥¶Ë¡£
¡ñ¾²Ì¬¾Ö²¿±äÁ¿£¬ÔÚº¯ÊýÌåÀïÃæ¶¨ÒåµÄ£¬¾ÍÖ»ÄÜÔÚÕâ¸öº¯ÊýÀïÓÃÁË£¬Í¬Ò»¸öÎĵµÖÐµÄÆäËûº¯ÊýÒ²Óò»ÁË¡£ÓÉÓÚ±» staticÐÞÊεıäÁ¿×ÜÊÇ´æÔÚÓÚÄÚ´æµÄ¾²Ì¬Çø£¬ËùÒÔ¼´Ê¹Õâ¸öº¯ÊýÔËÐнáÊø£¬Õâ¸ö¾²Ì¬±äÁ¿µÄÖµ»¹ÊDz»»á±»Ïú»Ù£¬º¯ÊýÏ´ÎʹÓÃʱÈÔÈ»ÄÜÓõ½Õâ¸öÖµ¡£
Àý£ºstatic int j ;
void fun1(void)
{
static int i = 0;
i++;
}
void fun2(void)
{
j = 0;
j++;
}
int main()
{
for(int k=0; k<10; k++)
{
fun1();
fun2();
}
return 0;
}
i ºÍ jµÄÖµ·Ö±ðÊǶàÉÙ£¬ÎªÊ²Ã´£¿
ÕâÀÔÚº¯Êýfun1ÖÐÉùÃ÷ÁËi£¬¶ø²»ÊǶ¨ÒåÁËi£¬Ò²¾ÍÊǸæËß±àÒëÆ÷£¬i Õâ¸öÃû×ÖÒѾ­Æ¥Åäµ½Ò»¿éÄÚ´æÉÏÁË£¬²¢ÇÒÔÚ¾²Ì¬ÄÚ´æÇø¡


Ïà¹ØÎĵµ£º

CºÍC++Ö®¼äµÄ²»Í¬

£¨×¢£¬±¾ÎÄÊÇ·­ÒëµÄhttp://www.cprogramming.com/
ÉϵÄÎÄÕ Where C and C++ Differ
£©
C++»ùÓÚC£¬Ò²±£ÁôÁËCµÄ´ó²¿·ÖÌØÐÔ¡£µ«ÊÇÔÚÔ´Âë¼¶ÉÏÓÐЩµØ·½ÊÇÓëC²»¼æÈݵġ£
C³ÌÐòԱʹÓÃC++ʱµÄÏÝÚå
´Ó void* µÄÒþʽ·ÖÅä
²»ÄÜ´Ó void* ÒþʽµØ·ÖÅäµ½ÆäËûÈκÎÀàÐÍ¡£ÀýÈ磬ÏÂÃæµÄ´úÂëÔÚCÖÐÊǷdz£ÓÐЧµÄ¡£
    in ......

C³Ì100Àý

1/ÓÐ1¡¢2¡¢3¡¢4¸öÊý×Ö£¬ÄÜ×é³É¶àÉÙ¸ö»¥²»ÏàͬÇÒÎÞÖØ¸´Êý×ÖµÄÈýλÊý£¿¶¼ÊǶàÉÙ£¿
==============================================================
2/ÆóÒµ·¢·ÅµÄ½±½ð¸ù¾ÝÀûÈóÌá³É¡£ÀûÈó(I)µÍÓÚ»òµÈÓÚ10ÍòԪʱ£¬½±½ð¿ÉÌá10%£»ÀûÈó¸ß
¡¡¡¡¡¡ÓÚ10ÍòÔª£¬µÍÓÚ20ÍòԪʱ£¬µÍÓÚ10ÍòÔªµÄ²¿·Ö°´10%Ìá³É£¬¸ßÓÚ10ÍòÔªµÄ²¿·Ö£¬¿É¿ÉÌá ......

Tricky C questions



ÒÔÏÂÊǼ¸¸ö¼¬ÊÖµÄ
C ÎÊÌâ, ºÜÄÑ×ö, ¿´¿´×Ô¼º»á×ö¼¸¸ö?
How do you write a program which produces its own source code as its output?
How can I find the day of the week given the date?
Why doesn’t C have nested functions?
What is the most efficient way to count the num ......

C# C/S³ÌÐò³ö´í£ºContextSwitchDeadlock is detected

½ñÌìÔÚVS2005µ÷ÊÔÒ»¸öC# C/S³ÌÐò£¬µ±Í¨¹ýRFCÓëSAPÁ¬½Óʱ¼ä¹ý³¤Ê±£¬³öÏÖ´Ë´íÎó£¬ÔÚÍøÉÏÕÒµ½½â¾ö°ì·¨¡£
VS2008ÉϵÄÒ»¸ö³ÌÐò£¬Í¨¹ýOracle.DataAccess.dllÖ´ÐÐdrop user
cascade²Ù×÷£¬ÎÒÔÚsqlplusÖ´Ðд˲Ù×÷´óÔ¼ÐèÒªÒ»·ÖÖÓ×óÓÒʱ¼ä£¬µ±ÎÒÔÚVS2008ÖÐdebugÆô¶¯´Ë³ÌÐòʱ£¬Ò»Ö±½ÓÊÕµ½
“ContextSwitchDeadlock is detected& ......

PCÖ®¸¸C. ThackerÈÙ»ñ2009ÄêͼÁé½±


PCÖ®¸¸C. ThackerÈÙ»ñ2009ÄêͼÁé½±
2010-03-10 01:21 |  3110´ÎÔĶÁ |  ¡¾ÒÑÓÐ16ÌõÆÀÂÛ¡¿·¢±íÆÀÂÛ
¹Ø¼ü´Ê£ºÐÂÎÅ×ÊѶ  | ¸ÐлliujiangCEµÄÌṩ |  ÊÕ²ØÕâÆª×ÊѶ
¸ù¾ÝACM¹Ù·½ÍøÕ¾3ÔÂ9ÈÕ·¢²¼µÄÏûÏ¢£¬2009ÄêͼÁé½±ÊÚÓèÁËÏÖ´úPCÖ®¸¸Charles Thacker£¬ÒÔ±íÕÃËû¶ÔµÚһ̨ÏÖ´ú¸öÈ˼ÆËã»úXerox PARC Altoµ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ