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 * ......
1.ÇóÏÂÃæº¯ÊýµÄ·µ»ØÖµ£¨Î¢Èí£©
int func(x)
{
int countx = 0;
while(x)
{
countx ++;
x = x&(x-1);
......
ÏÈÊÇÄÚºËÇý¶¯³ÌÐò£º
#include <linux/module.h>//¾ßÌåµÄÍ·ÎļþλÖÃΪ/opt/FriendlyARM/mini2440/linux-2.6.29/include/linux/*.h
#include <linux/kernel.h>
#include <linux/fs.h>
#include <linux/init.h>
#include <linux/delay.h>
#include <linux/poll.h>
#include <l ......
µÚ4Õ ÔõÑù²ÅÄܱ£Ö¤²âÊÔЧ¹û£¿
4.1 ºâÁ¿²âÊÔЧ¹ûµÄ»ù±¾Ö¸±ê£º°×ºÐ¸²¸Ç
ºâÁ¿²âÊÔЧ¹ûµÄ»ù±¾Ö¸±êÊǰ׺и²¸ÇÂÊ£¬¼´Í³¼Æ²âÊÔ¶Ô´úÂëÂß¼µ¥Î»µÄ¸²¸Ç×´¿ö¡£´úÂëµÄÂß¼µ¥Î»Ö÷ÒªÓУºÓï¾ä(¿é)£¬Ìõ¼þ¡¢Åж¨¡¢·ÖÖ§¡¢Â·¾¶¡£³£Óõİ׺и²¸ÇÓÐÁùÖÖ£ºÓï¾ä¸²¸Ç¡¢Ìõ¼þ¸²¸Ç¡¢·ÖÖ§¸²¸Ç¡¢Åж¨Ìõ¼þ¸²¸Ç¡¢ÐÞÕýÅж¨Ìõ¼þ¸²¸Ç¡¢º ......
ʲôÊÇmvcģʽ £¿
MVC ʽµÄ³öÏÖ²»½öʵÏÖÁ˹¦ÄÜÄ£¿éºÍÏÔʾģ¿éµÄ·ÖÀ룬ͬʱËü»¹Ìá¸ßÁËÓ¦ÓÃϵͳµÄ¿Éά»¤ÐÔ¡¢¿ÉÀ©Õ¹ÐÔ¡¢¿ÉÒÆÖ²ÐÔºÍ×é¼þµÄ¿É¸´ÓÃÐÔ
B/S ģʽºÍC/SģʽÓÐÊ²Ã´Çø±ð£¿
C/S½á¹¹£¬¼´Client/Server(¿Í»§»ú/·þÎñÆ÷)½á¹¹£¬ÊÇ´ó¼ÒÊìÖªµÄÈí¼þϵͳÌåϵ½á¹¹£¬Í¨¹ý½«ÈÎÎñºÏÀí·ÖÅäµ½Client¶ËºÍServer¶Ë£ ......