CÔËÐÐʱ¿â£¨½âÎömainCRTStartup£©
1.¸ÅÂÛ
¡¡¡¡ÔËÐÐʱ¿âÊdzÌÐòÔÚÔËÐÐʱËùÐèÒªµÄ¿âÎļþ£¬Í¨³£ÔËÐÐʱ¿âÊÇÒÔLIB»òDLLÐÎʽÌṩµÄ¡£CÔËÐÐʱ¿âµ®ÉúÓÚ20ÊÀ¼Í70Äê´ú£¬µ±Ê±µÄ³ÌÐòÊÀ½ç»¹ºÜµ¥´¿£¬Ó¦ÓóÌÐò¶¼Êǵ¥Ï̵߳쬶àÈÎÎñ»ò¶àÏ̻߳úÖÆÔÚ´Ëʱ»¹ÊôÓÚйÛÄî¡£ËùÒÔÕâ¸öjʱÆÚµÄCÔËÐÐʱ¿â¶¼Êǵ¥Ï̵߳ġ£
¡¡¡¡Ëæ×ŲÙ×÷ϵͳ¶àÏ̼߳¼ÊõµÄ·¢Õ¹£¬×î³õµÄCÔËÐÐʱ¿âÎÞ·¨Âú×ã³ÌÐòµÄÐèÇ󣬳öÏÖÁËÑÏÖØµÄÎÊÌâ¡£CÔËÐÐʱ¿âʹÓÃÁ˶à¸öÈ«¾Ö±äÁ¿£¨ÀýÈçerrno£©ºÍ¾²Ì¬±äÁ¿£¬Õâ¿ÉÄÜÔÚ¶àÏ̳߳ÌÐòÖÐÒýÆð³åÍ»¡£¼ÙÉèÁ½¸öÏ̶߳¼Í¬Ê±ÉèÖÃerrno£¬Æä½á¹ûÊǺóÉèÖõÄerrno»á½«ÏÈǰµÄ¸²¸Ç£¬Óû§µÃ²»µ½ÕýÈ·µÄ´íÎóÐÅÏ¢¡£
¡¡¡¡Òò´Ë£¬Visual C++ÌṩÁËÁ½ÖÖ°æ±¾µÄCÔËÐÐʱ¿â¡£Ò»¸ö°æ±¾¹©µ¥Ïß³ÌÓ¦ÓóÌÐòµ÷Óã¬ÁíÒ»¸ö°æ±¾¹©¶àÏß³ÌÓ¦ÓóÌÐòµ÷Ó᣶àÏß³ÌÔËÐÐʱ¿âÓëµ¥Ïß³ÌÔËÐÐʱ¿âÓÐÁ½¸öÖØ´ó²î±ð£º
¡¡¡¡£¨1£©ÀàËÆerrnoµÄÈ«¾Ö±äÁ¿£¬Ã¿¸öÏ̵߳¥¶ÀÉèÖÃÒ»¸ö£»
¡¡¡¡ÕâÑù´Óÿ¸öÏß³ÌÖпÉÒÔ»ñÈ¡ÕýÈ·µÄ´íÎóÐÅÏ¢¡£
¡¡¡¡£¨2£©¶àÏ߳̿âÖеÄÊý¾Ý½á¹¹ÒÔͬ²½»úÖÆ¼ÓÒÔ±£»¤¡£
¡¡¡¡ÕâÑù¿ÉÒÔ±ÜÃâ·ÃÎÊʱºòµÄ³åÍ»¡£
¡¡¡¡Visual C++ÌṩµÄ¶àÏß³ÌÔËÐÐʱ¿âÓÖ·ÖΪ¾²Ì¬Á´½Ó¿âºÍ¶¯Ì¬Á´½Ó¿âÁ½À࣬¶øÃ¿Ò»ÀàÔËÐÐʱ¿âÓÖ¿ÉÔÙ·ÖΪdebug°æºÍrelease°æ£¬Òò´ËVisual C++¹²ÌṩÁË6¸öÔËÐÐʱ¿â¡£ÈçÏÂ±í£º
CÔËÐÐʱ¿â ¿âÎļþ
Single thread(static link) libc.lib
Debug single thread(static link) libcd.lib
MultiThread(static link) libcmt.lib
Debug multiThread(static link) libcmtd.lib
MultiThread(dynamic link) msvert.lib
Debug multiThread(dynamic link) msvertd.lib
void mainCRTStartup(void)
{
¡¡int mainret;
¡¡/*»ñµÃWIN32ÍêÕûµÄ°æ±¾ÐÅÏ¢*/
¡¡_osver = GetVersion();
¡¡_winminor = (_osver >> 8) & 0x00FF ;
¡¡_winmajor = _osver & 0x00FF ;
¡¡_winver = (_winmajor << 8) + _winminor;
¡¡_osver = (_osver >> 16) & 0x00FFFF ;
¡¡_ioinit(); /* initialize lowio */
¡¡/* »ñµÃÃüÁîÐÐÐÅÏ¢ */
¡¡_acmdln = (char *) GetCommandLineA();
¡¡/* »ñµÃ»·¾³ÐÅÏ¢ */
¡¡_aenvptr = (char *) __crtGetEnvironmentStringsA();
¡¡_setargv(); /* ÉèÖÃÃüÁîÐвÎÊý */
¡¡_setenvp(); /* ÉèÖû·¾³²ÎÊý */
¡¡_cinit(); /* CÊý¾Ý³õʼ»¯£ºÈ«¾Ö±äÁ¿³õʼ»¯£¬¾ÍÔÚÕâÀ*/
¡¡__initenv = _environ;
¡¡mainret = main( __argc, __argv, _environ ); /*µ÷ÓÃmainº¯Êý*/
¡¡exit( mainret );
Ïà¹ØÎĵµ£º
Èç×ªÔØ£¬Çë×¢Ã÷³ö´¦£ºhttp://blog.csdn.net/zhangyang0402/archive/2010/05/01/5549266.aspx
¿ª·¢¹¤¾ß£ºVC ++ 6.0 MASM32
Ò»¡¢__cdeclµ÷Ó÷½Ê½
1£® ÔÚVCÖÐн¨Win32 Console Application, TestASM
2£® н¨test.c
#include<stdio.h>
extern void swap(int * ......
ûÏëµ½ ûÏëµ½ ÍòÍòûÏëµ½
¶ÔC++°ËÇÏֻͨÁË7ÇϵÄÎÒ£¬¾¹È»Òª¿ªÊ¼¸ãc++Á˵Ä˵£¬ÕæÊǺò»´Ì¼¤¡£
²»¸ÒÏàÐÅ£¬²»¸ÒÏàÐÅ¡£
ÀàÐÍÊÇÊ²Ã´ÍæÒ⣿ÀàÔõôд£¿×Ö·û´®Ôõô´¦Àí£¿ÔõôÊÍ·ÅÄڴ棿
ż²»Öª£¬²»Öª£¬ÕæµÄ²»Öª¡£¡£¡£¡£
°¥ Íê¶¼ÍêÁË¡£
°¦ ²»¹ÜÔõô˵¶¼ÒªÈ¥Ñ§µÄ¡£¡£¡£Ò»µãÕÞ¶¼Ã»ÓÐ
#incl ......
µÚ4Õ ÔõÑù²ÅÄܱ£Ö¤²âÊÔЧ¹û£¿
4.1 ºâÁ¿²âÊÔЧ¹ûµÄ»ù±¾Ö¸±ê£º°×ºÐ¸²¸Ç
ºâÁ¿²âÊÔЧ¹ûµÄ»ù±¾Ö¸±êÊǰ׺и²¸ÇÂÊ£¬¼´Í³¼Æ²âÊÔ¶Ô´úÂëÂß¼µ¥Î»µÄ¸²¸Ç×´¿ö¡£´úÂëµÄÂß¼µ¥Î»Ö÷ÒªÓУºÓï¾ä(¿é)£¬Ìõ¼þ¡¢Åж¨¡¢·ÖÖ§¡¢Â·¾¶¡£³£Óõİ׺и²¸ÇÓÐÁùÖÖ£ºÓï¾ä¸²¸Ç¡¢Ìõ¼þ¸²¸Ç¡¢·ÖÖ§¸²¸Ç¡¢Åж¨Ìõ¼þ¸²¸Ç¡¢ÐÞÕýÅж¨Ìõ¼þ¸²¸Ç¡¢º ......
ÕâÊÇÎÒдµÄµÚÒ»¸ö²©¿ÍÈÕÖ¾£¬ÔÚ´ËÊ×ÏȲâÊÔһϱ¾¸ö²©¿ÍϵͳµÄ¹¦ÄÜÇé¿ö£¬Èç·ÖÀ๦ÄÜ£¬ÔĶÁµÄ¼òÒ×ÐÔ£¬´úÂëÏÔʾµÄ·½Ê½µÈ¡£
so:Ìí¼ÓµÚÒ»¸ö´úÂë³ÌÐò£¬ÈçÏ£º
private void Form1_Load(object sender, EventArgs e)
{//ʹlistView¿Ø¼þÖ§³Ö±à¼¹¦ÄÜ
System.Windows ......
¡¾ÊµÏÖ¹¦ÄÜ¡¿£ºLinuxϵÄC±à³Ì£º±àдһ¸ö³ÌÐò£¨¿â£©£¬ÊµÏÖ¶¨Ê±Æ÷£¨¼ÆÊ±Æ÷£©µÄ¹¦ÄÜ£¬ËüÄÜΪÓû§ÌṩÔÚͬһ½ø³ÌÖжà´ÎʹÓõĶ¨Ê±Æ÷¡£ÕâÀïÒªÇóÓÃÐźÅÀ´ÊµÏÖ¡£
¡¾½âÌâ˼·¡¿£º±àдһ¸ö½á¹¹ÌåTimer´ú±íÒ»¸ö¼ÆÊ±Æ÷£¬È»ºóÔÙ¶¨ÒåTimerÀàÐ͵ÄÊý×émyTimer[N]£¬ÓÃÀ´±£´æÎÒÃÇÉèÖõĶ¨Ê±Æ÷£»ÔÙ¶¨Ò庯ÊýsetTimer£¨£©Éú³É¼ÆÊ±Æ÷£¬²¢½«Éú³É ......