keil C ³öÏÖWARNING:MULTIPLE CALL TO SEGMENTµÄ½âÎö
µ÷ÊÔkeil³ÌÐòʱÓÐʱ»á³öÏÖ¸÷ÖÖ±àÒ뾯¸æ£¬Ò»°ãÇé¿öϲ»»áÓ°Ïì³ÌÐòµÄÔËÐС£µ«³öÏÖÈçÌâWARNING:MULTIPLE CALL TO SEGMENT¾¯¸æÊ±£¬ÇëÁôÒâÄúµÄ³ÌÐòÊÇ·ñ»á·¢Éú´íÎó¡£ÉÏÊö¾¯¸æÖ¸µÄÊÇÄ㶨ÒåµÄº¯ÊýÌåÔÚÖ÷³ÌÐòÖб»µ÷Óã¬ÔÚÖжÏÖÐÒ²±»Ö±½Ó»ò¼ä½ÓµÄµ÷ÓÃÁË¡£¿ÉÏëÈôÖ÷³ÌÐòÕýÔËÐд˺¯Êýʱ£¬ÖжÏÀ´ÁÙÒ²ÔËÐÐÕâ¶Î³ÌÐòµÄ»°»á·¢Éúº¯ÊýÖØÔØÏÖÏó¡£Èô´ËÏÖÏó·¢ÉúÇÒÄãÔÚ³ÌÐòÖÐδ¼Ó´¦Àí£¬ÄÇôºÜÓпÉÄܵ¼ÖÂÄúµÄ³ÌÐò·¢Éú²»¿ÉÔ¤²âµÄ½á¹û¡£½áºÏÍøÉϲéѯµÄ½á¹ûºÍ×Ô¼ºµÄÉè¼ÆÌṩ¼¸¸ö¿ÉÐеĽâ¾ö·½·¨ÊÇ£º
1. ÀûÓùؼü×Öreentrant±íÃ÷º¯Êý¿ÉÖØÔØ
ÆÀ×¢£º¸Ã·¨ÅųýÁ˱àÒëÆ÷¾¯¸æºÍ¿ÉÄܳöÏÖµÄÖØÔØ´øÀ´µÄÓ°Ï죬µ«´Ë·½·¨ÔÚÖØÔØ·¢Éúʱ£¬ÎªÁ˱£»¤Ö÷³ÌÐòµÄ³ÌÐòÐÅÏ¢£¬ÏµÍ³»á½«³ÌÐòµÄÐÅÏ¢±£´æµ½¶ÑÕ»ÖУ¬Ôì³É¶ÑÕ»µÄ¶øÍ⸺µ£
2. Èç¹û¿Õ¼ä¶àµÄ»°£¬¿ÉÒÔ¶¨ÒåÁ½¸öͬ¹¦Äܵĺ¯Êý£¬·Ö±ðÔÚÖжϺÍÖжÏÍâµ÷ÓÃ
ÆÀ×¢£º¸Ã·½·¨²Ù×÷ÆðÀ´·½±ã£¬²»»á³öÏÖÉÏÒ»¸ö°ì·¨µÄ±×¶Ë£¬µ«±È½ÏÀË·Ñcode
3. ÀûÓú¯ÊýÖ¸Õë
ÆÀ×¢£º¸Ã·½·¨ÊʺÏÓÃÔÚÈ·¶¨ÖжϺÍÖ÷³ÌÐò²»»áͬʱµ÷Óøú¯ÊýµÄʱºò¡£Ëü²»½öÅųýÁ˱àÒëÆ÷¾¯¸æ£¬ÔÚcodeÕ¼ÓᢲÙ×÷·½Ãæ¶¼±È½ÏºÃ
Ïà¹ØÎĵµ£º
º¯ÊýÃûÓ뺯ÊýÖ¸Õë
º¯Êý´æ·ÅÔÚÄÚ´æµÄ´úÂëÇøÓòÄÚ£¬ËüÃÇͬÑùÓеØÖ·£¬ÎÒÃÇÈçºÎÄÜ»ñµÃº¯ÊýµÄµØÖ·ÄØ£¿
Èç¹ûÎÒÃÇÓÐÒ»¸öint test(int a)µÄº¯Êý£¬ÄÇô£¬ËüµÄµØÖ·¾ÍÊǺ¯ÊýµÄÃû×Ö£¬ÕâÒ»µãÈçͬÊý×éÒ»Ñù£¬Êý×éµÄÃû×Ö¾ÍÊÇÊý×éµÄÆðʼµØÖ·¡£
Ò» ͨ³£µÄº¯Êýµ÷ÓÃ
Ò»¸öͨ³£µÄº¯Êýµ÷ÓõÄÀý×Ó ......
(1)
Êý×éÃûµÄÄÚºÔÚÓÚÆäÖ¸´úʵÌåÊÇÒ»ÖÖÊý¾Ý½á¹¹£¬ÕâÖÖÊý¾Ý½á¹¹¾ÍÊÇÊý×飻
(2)
Êý×éÃûµÄÍâÑÓÔÚÓÚÆä¿ÉÒÔת»»ÎªÖ¸ÏòÆäÖ¸´úʵÌåµÄÖ¸Õ룬¶øÇÒÊÇÒ»¸öÖ¸Õë³£Á¿£»
(3)
Ö¸ÏòÊý×éµÄÖ¸ÕëÔòÊÇÁíÍâÒ»ÖÖ±äÁ¿ÀàÐÍ£¨ÔÚWIN32ƽ̨Ï£¬³¤¶ÈΪ4£©£¬½ö½öÒâζ×ÅÊý×éµÄ´æ·ÅµØÖ·
£¨4£©
Êý×éÃû×÷Ϊº¯ÊýÐβÎʱ£¬ÔÚº¯ÊýÌåÄÚ£¬ÆäʧȥÁ˱¾ÉíµÄÄÚº ......
extern "C" Ïê½â
ÔÚC++ÖУ¬ÎªÁËÖ§³ÖÖØÔØ»úÖÆ£¬ÔÚ±àÒëÉú³É»ã±à´úÂëʱ£¬º¯ÊýµÄÃû×ÖÒª¼ÓÈ뺯ÊýµÄ²ÎÊýÀàÐÍ»òÕß·µ»ØÖµÀàÐ͵ÈÐÅÏ¢
ÔÚCÖУ¬ÒòûÓÐÖØÔØ»úÖÆ£¬±àÒëºóµÄ´úÂëÖ»ÊǼòµ¥µÄº¯ÊýÃû×Ö¶øÒÑ£¬²»¼ÓÈëÆäËûµÄÐÅÏ¢
1. ²»¼ÓÈëextern "C"
testexternc.cpp
int mytest(void)
{
int a=10,b=20;
int c=a+b;
ret ......
²Ù×÷ϵͳµÄÒ»¸ö¾µäÎÊÌâÊÇ"Éú²úÕß-Ïû·ÑÕß"ÎÊÌâ, ÕâÉæ¼°Í¬²½ÐźÅÁ¿ºÍ»¥³âÐźÅÁ¿µÄÓ¦ÓÃ, ÔÚÕâÀï,ÎÒÓÃÏ̵߳Äͬ²½ºÍ»¥³âÀ´ÊµÏÖ.
/*
* author ÕÅÎÄ
* 2008/06/20
*/
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <pthread.h>
#include <semaphore.h> ......
²Ù×÷ϵͳµÄÒ»¸ö¾µäÎÊÌâÊÇ"Éú²úÕß-Ïû·ÑÕß"ÎÊÌâ, ÕâÉæ¼°Í¬²½ÐźÅÁ¿ºÍ»¥³âÐźÅÁ¿µÄÓ¦ÓÃ, ÔÚÕâÀï,ÎÒÓÃÏ̵߳Äͬ²½ºÍ»¥³âÀ´ÊµÏÖ.
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <pthread.h>
#include <semaphore.h>
#define N 2 // Ïû·ÑÕß» ......