C static
CÓïÑÔ³ÌÐò¿ÉÒÔ¿´³ÉÓÉһϵÁÐÍⲿ¶ÔÏ󹹳ɣ¬ÕâЩÍⲿ¶ÔÏó¿ÉÄÜÊDZäÁ¿»òº¯Êý¡£¶øÄÚ²¿±äÁ¿ÊÇÖ¸¶¨ÒåÔÚº¯ÊýÄÚ²¿µÄº¯Êý²ÎÊý¼°±äÁ¿¡£Íⲿ±äÁ¿¶¨ÒåÔÚº¯ÊýÖ®Í⣬Òò´Ë¿ÉÒÔÔÚÐí¶àº¯ÊýÖÐʹÓá£ÓÉÓÚCÓïÑÔ²»ÔÊÐíÔÚÒ»¸öº¯ÊýÖж¨ÒåÆäËüº¯Êý£¬Òò´Ëº¯Êý±¾ÉíÖ»ÄÜÊÇ“ÍⲿµÄ”¡£
ÓÉÓÚCÓïÑÔ´úÂëÊÇÒÔÎļþΪµ¥Î»À´×éÖ¯µÄ£¬ÔÚÒ»¸öÔ´³ÌÐòËùÓÐÔ´ÎļþÖУ¬Ò»¸öÍⲿ±äÁ¿»òº¯ÊýÖ»ÄÜÔÚij¸öÎļþÖж¨ÒåÒ»´Î£¬¶øÆäËüÎļþ¿ÉÒÔͨ¹ýexternÉùÃ÷À´·ÃÎÊËü£¨¶¨ÒåÍⲿ±äÁ¿»òº¯ÊýµÄÔ´ÎļþÖÐÒ²¿ÉÒÔ°üº¬¶Ô¸ÃÍⲿ±äÁ¿µÄexternÉùÃ÷£©¡£
¶østaticÔò¿ÉÒÔÏÞ¶¨±äÁ¿»òº¯ÊýΪ¾²Ì¬´æ´¢¡£Èç¹ûÓÃstaticÏÞ¶¨Íⲿ±äÁ¿Ó뺯Êý£¬Ôò¿ÉÒÔ½«¸Ã¶ÔÏóµÄ×÷ÓÃÓòÏÞ¶¨Îª±»±àÒëÔ´ÎļþµÄÊ£Óಿ·Ö¡£Í¨¹ýstaticÏÞ¶¨Íⲿ¶ÔÏ󣬿ÉÒÔ´ïµ½Òþ²ØÍⲿ¶ÔÏóµÄÄ¿µÄ¡£Òò¶ø£¬staticÏÞ¶¨µÄ±äÁ¿»òº¯Êý²»»áºÍͬһ³ÌÐòÖÐÆäËüÎļþÖÐͬÃûµÄÏà³åÍ»¡£Èç¹ûÓÃstaticÏÞ¶¨ÄÚ²¿±äÁ¿£¬Ôò¸Ã±äÁ¿´Ó³ÌÐòÒ»¿ªÊ¼¾ÍÓµÓÐÄڴ棬²»»áËæÆäËùÔÚº¯ÊýµÄµ÷ÓúÍÍ˳ö¶ø·ÖÅäºÍÏûʧ¡£
CÓïÑÔÖÐʹÓþ²Ì¬º¯ÊýµÄºÃ´¦£º
¾²Ì¬º¯Êý»á±»×Ô¶¯·ÖÅäÔÚÒ»¸öһֱʹÓÃµÄ´æ´¢Çø£¬Ö±µ½Í˳öÓ¦ÓóÌÐòʵÀý£¬±ÜÃâÁ˵÷Óú¯Êýʱѹջ³öÕ»£¬ËÙ¶È¿ìºÜ¶à¡£
¹Ø¼ü×Ö“static”£¬Òë³ÉÖÐÎľÍÊÇ“¾²Ì¬µÄ”£¬ËùÒÔÄÚ²¿º¯ÊýÓֳƾ²Ì¬º¯Êý¡£µ«´Ë´¦“static”µÄº¬Òå²»ÊÇÖ¸´æ´¢·½Ê½£¬¶øÊÇÖ¸¶Ôº¯ÊýµÄ×÷ÓÃÓò½ö¾ÖÏÞÓÚ±¾Îļþ¡£ ʹÓÃÄÚ²¿º¯ÊýµÄºÃ´¦ÊÇ£º²»Í¬µÄÈ˱àд²»Í¬µÄº¯Êýʱ£¬²»Óõ£ÐÄ×Ô¼º¶¨ÒåµÄº¯Êý£¬ÊÇ·ñ»áÓëÆäËüÎļþÖеĺ¯ÊýͬÃû£¬ÒòΪͬÃûҲûÓйØÏµ¡£
cÓïÑÔÖÐstaticµÄÓïÒå
1.static±äÁ¿:
1).¾Ö²¿
a.¾²Ì¬¾Ö²¿±äÁ¿ÔÚº¯ÊýÄÚ¶¨Òå,Éú´æÆÚΪÕû¸öÔ´³ÌÐò£¬µ«×÷ÓÃÓòÓë×Ô¶¯±äÁ¿Ïàͬ£¬Ö»ÄÜÔÚ¶¨Òå¸Ã±äÁ¿µÄº¯ÊýÄÚʹÓá£Í˳ö¸Ãº¯Êýºó£¬ ¾¡¹Ü¸Ã±äÁ¿»¹¼ÌÐø´æÔÚ£¬µ«²»ÄÜʹÓÃËü¡£
b.¶Ô»ù±¾ÀàÐ͵ľ²Ì¬¾Ö²¿±äÁ¿ÈôÔÚ˵Ã÷ʱδ¸³ÒÔ³õÖµ£¬Ôòϵͳ×Ô¶¯¸³Óè0Öµ¡£¶ø¶Ô×Ô¶¯±äÁ¿²»¸³³õÖµ£¬ÔòÆäÖµÊDz»¶¨µÄ¡£
2).È«¾Ö
È«¾Ö±äÁ¿±¾Éí¾ÍÊǾ²Ì¬´æ´¢·½Ê½£¬ ¾²Ì¬È«¾Ö±äÁ¿µ±È»Ò²ÊǾ²Ì¬´æ´¢·½Ê½¡£µ«ÊÇËûÃǵÄ×÷ÓÃÓò£¬·Ç¾²Ì¬È«¾Ö ±äÁ¿µÄ×÷ÓÃÓòÊÇÕû¸öÔ´³ÌÐò£¨¶à¸öÔ´Îļþ¿ÉÒÔ¹²Í¬Ê¹Óã©£» ¶ø¾²Ì¬È«¾Ö±äÁ¿ÔòÏÞÖÆÁËÆä×÷ÓÃÓò£¬ ¼´Ö»ÔÚ¶¨Òå¸Ã±äÁ¿µÄÔ´ÎļþÄÚÓÐЧ£¬ ÔÚͬһԴ³ÌÐòµÄÆäËüÔ´ÎļþÖв»ÄÜʹÓÃËü¡£
2.staticº¯Êý£¨Ò²½
Ïà¹ØÎĵµ£º
http://en.wikipedia.org/wiki/C_preprocessor
C preprocessor
from Wikipedia, the free encyclopedia
Jump to:navigation, search
The C preprocessor (cpp) is the preprocessor for the C programming language. In many C implementations, it is a separate program invoked by the compiler as the first part ......
°ÑÊäÈëµÄÒ»´®×Ö·ûת³ÉÊý×飬ת³ÉÁ´±í£¬È»ºóɾȥÆäÖÐÖ¸¶¨µÄ×Ö·û£¬ÔÚβ²¿Ìí¼ÓÒ»¸ö×Ö·û¡£
£¨³ÌÐò»¹²»ÍêÉÆ£¬Ã»ÓжÔÊä´íµÄÇé¿ö½øÐд¦Àí£¬£¬ÔÝʱÏÈÕâÑù°É¡£¡£= =¡££©
#include<stdio.h>
#include<malloc.h>
#define LEN sizeof(struct link)
struct link
{
char ch;
struct link *next;
}*string;
char a ......
C/C++
Í·ÎļþÒ»ÀÀ
//////////////////////////////////////////////////////////////////////////
C
Í·Îļþ
(C89,C95)
(C++98,C++03Ò²°üº¬)
include <assert.h>¡¡¡¡¡¡¡¡//Õï¶Ï¿â
include <ctype.h>¡¡¡¡¡¡¡¡ //×Ö·û´¦Àíº¯Êý¿â
include <errno.h>¡¡¡¡¡¡¡¡ //´íÎó¶¨Òå
include <float.h& ......
ÔÚCÓïÑÔÖУ¬ÐÞÊηûexternÓÃÔÚ±äÁ¿»òÕߺ¯ÊýµÄÉùÃ÷ǰ£¬ÓÃÀ´ËµÃ÷“´Ë±äÁ¿/º¯ÊýÊÇÔڱ𴦶¨ÒåµÄ£¬ÒªÔÚ´Ë´¦ÒýÓÔ¡£
Ò».externÐÞÊαäÁ¿µÄÉùÃ÷
¾ÙÀýÀ´Ëµ£¬Èç¹ûÎļþa.cÐèÒªÒýÓÃb.cÖбäÁ¿int v£¬¾Í¿ÉÒÔÔÚa.cÖÐÉùÃ÷extern int v£¬È»ºó¾Í¿ÉÒÔÒýÓñäÁ¿v¡£ÕâÀïÐèҪעÒâµÄÊÇ£¬±»ÒýÓõıäÁ¿vµÄÁ´½ÓÊôÐÔ±ØÐëÊÇÍâÁ´½Ó£¨external£ ......