keil C ³öÏÖWARNING:MULTIPLE CALL TO SEGMENTµÄ½âÎö
µ÷ÊÔkeil³ÌÐòʱÓÐʱ»á³öÏÖ¸÷ÖÖ±àÒ뾯¸æ£¬Ò»°ãÇé¿öϲ»»áÓ°Ïì³ÌÐòµÄÔËÐС£µ«³öÏÖÈçÌâWARNING:MULTIPLE CALL TO SEGMENT¾¯¸æÊ±£¬ÇëÁôÒâÄúµÄ³ÌÐòÊÇ·ñ»á·¢Éú´íÎó¡£ÉÏÊö¾¯¸æÖ¸µÄÊÇÄ㶨ÒåµÄº¯ÊýÌåÔÚÖ÷³ÌÐòÖб»µ÷Óã¬ÔÚÖжÏÖÐÒ²±»Ö±½Ó»ò¼ä½ÓµÄµ÷ÓÃÁË¡£¿ÉÏëÈôÖ÷³ÌÐòÕýÔËÐд˺¯Êýʱ£¬ÖжÏÀ´ÁÙÒ²ÔËÐÐÕâ¶Î³ÌÐòµÄ»°»á·¢Éúº¯ÊýÖØÔØÏÖÏó¡£Èô´ËÏÖÏó·¢ÉúÇÒÄãÔÚ³ÌÐòÖÐδ¼Ó´¦Àí£¬ÄÇôºÜÓпÉÄܵ¼ÖÂÄúµÄ³ÌÐò·¢Éú²»¿ÉÔ¤²âµÄ½á¹û¡£½áºÏÍøÉϲéѯµÄ½á¹ûºÍ×Ô¼ºµÄÉè¼ÆÌṩ¼¸¸ö¿ÉÐеĽâ¾ö·½·¨ÊÇ£º
1. ÀûÓùؼü×Öreentrant±íÃ÷º¯Êý¿ÉÖØÔØ
ÆÀ×¢£º¸Ã·¨ÅųýÁ˱àÒëÆ÷¾¯¸æºÍ¿ÉÄܳöÏÖµÄÖØÔØ´øÀ´µÄÓ°Ï죬µ«´Ë·½·¨ÔÚÖØÔØ·¢Éúʱ£¬ÎªÁ˱£»¤Ö÷³ÌÐòµÄ³ÌÐòÐÅÏ¢£¬ÏµÍ³»á½«³ÌÐòµÄÐÅÏ¢±£´æµ½¶ÑÕ»ÖУ¬Ôì³É¶ÑÕ»µÄ¶øÍ⸺µ£
2. Èç¹û¿Õ¼ä¶àµÄ»°£¬¿ÉÒÔ¶¨ÒåÁ½¸öͬ¹¦Äܵĺ¯Êý£¬·Ö±ðÔÚÖжϺÍÖжÏÍâµ÷ÓÃ
ÆÀ×¢£º¸Ã·½·¨²Ù×÷ÆðÀ´·½±ã£¬²»»á³öÏÖÉÏÒ»¸ö°ì·¨µÄ±×¶Ë£¬µ«±È½ÏÀË·Ñcode
3. ÀûÓú¯ÊýÖ¸Õë
ÆÀ×¢£º¸Ã·½·¨ÊʺÏÓÃÔÚÈ·¶¨ÖжϺÍÖ÷³ÌÐò²»»áͬʱµ÷Óøú¯ÊýµÄʱºò¡£Ëü²»½öÅųýÁ˱àÒëÆ÷¾¯¸æ£¬ÔÚcodeÕ¼ÓᢲÙ×÷·½Ãæ¶¼±È½ÏºÃ
Ïà¹ØÎĵµ£º
1.MFCÖеķ½·¨£º(C++)
CFileStatus status;
CFile::GetStatus("D:\\test.txt",status);
long lSizeOfFile;
lSizeOfFile = status.m_size;
lSizeOfFileµÄÖµ¾ÍÊÇD:\\test.txtÎļþµÄ´óС
2.±ê×¼C»ñµÃÎļþ´óСµÄ5ÖÖ·½·¨
(×¢Ò⣺"__FILE__"Ö¸µÄÊǵ±Ç°Îļþ£¬Äã¿ÉÒÔ¸ÄΪÓÐЧ·¾¶µÄÄ¿±êÎļþ£¬±ÈÈç"D:\\test.txt"£©
#i ......
(1)
Êý×éÃûµÄÄÚºÔÚÓÚÆäÖ¸´úʵÌåÊÇÒ»ÖÖÊý¾Ý½á¹¹£¬ÕâÖÖÊý¾Ý½á¹¹¾ÍÊÇÊý×飻
(2)
Êý×éÃûµÄÍâÑÓÔÚÓÚÆä¿ÉÒÔת»»ÎªÖ¸ÏòÆäÖ¸´úʵÌåµÄÖ¸Õ룬¶øÇÒÊÇÒ»¸öÖ¸Õë³£Á¿£»
(3)
Ö¸ÏòÊý×éµÄÖ¸ÕëÔòÊÇÁíÍâÒ»ÖÖ±äÁ¿ÀàÐÍ£¨ÔÚWIN32ƽ̨Ï£¬³¤¶ÈΪ4£©£¬½ö½öÒâζ×ÅÊý×éµÄ´æ·ÅµØÖ·
£¨4£©
Êý×éÃû×÷Ϊº¯ÊýÐβÎʱ£¬ÔÚº¯ÊýÌåÄÚ£¬ÆäʧȥÁ˱¾ÉíµÄÄÚº ......
CµÄËÄÖÖ´æ´¢ÀàÏÞ¶¨·û£º
extern:Íⲿ±äÁ¿
static £º¾²Ì¬
register£º´æ´¢Æ÷
auto£º×Ô¶¯¡¡
¾²Ì¬¾Ö²¿±äÁ¿£º
´æ´¢ÇøºÍÈ«¾Ö±äÁ¿ÊÇÒ»ÑùµÄ¡£¾²Ì¬¾Ö²¿ºÍÈ«¾Ö±äÁ¿¼äµÄÖ÷񻂿±ðÊÇ£º¾²Ì¬¾Ö²¿±äÁ¿½ö¶ÔËüÔÚÆäÖÐÉùÃ÷µÄ¿éÊÇ¿ÉÖªµÄ¡£
¾²Ì¬È«¾Ö±äÁ¿£º
¸æËß±àÒëÆ÷´´½¨Ò»¸ö½öÔÚÉùÃ÷ËüµÄÎļþÖпÉÖªµÄÈ«¾Ö±äÁ¿¡£ÕâÒâζ×Å£º¼´Ê¹±äÁ¿Ê ......
Data Type Ranges
C/C++ recognizes the types shown in the table below.
Type Name Bytes Other Names Range of Values
&nb ......