Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

C/C++º¯Êýµ÷ÓÃÔ¼¶¨Ö®¼äµÄת»»

CÓïÑԵijõѧÕß³£·¸µÄÒ»¸öʧÎóÊǵ÷ÓÃϵͳ»òµÚÈý·½APIʱÍüÁËÔÚº¯ÊýÉùÃ÷Öбê×¢WINAPIµ÷Ó÷½Ê½£¬¶ø²ËÄñC++³ÌÐòԱҲÿÿÀ§»óΪʲô³ÉÔ±º¯Êý±ØÐëָʾΪCALLBACKÔÙÌí¼Óstatic¹Ø¼ü×Ö²ÅÄÜ×÷Ϊ»Øµ÷º¯Êý¡£ÔÚx86ϵͳÖУ¬´æÔÚ¶àÖÖº¯Êýµ÷ÓÃÔ¼¶¨¡£Èç¹ûµ÷ÓÃÕßÓë±»µ÷ÓÃÕß²ÉÓò»Í¬µÄµ÷ÓÃÔ¼¶¨£¬ºÜ¿ÉÄܵ¼Ö¶ÑÕ»ÆÆ»µ¡¢·Ç·¨·ÃÎʵÈÖÂÃü´íÎó¡£
Ò²ÐíÄú»áµÃ³öÒ»¸ö½áÂÛ£¬³ý·Ç½èÖú»ã±àÖ¸Á·ñÔòµ÷ÓÃÔ¼¶¨Ö®¼äµÄת»»ÊDz»¿ÉÄܵġ£²»¹ýºÜ¶àÊÂÇé¶¼²»ÊǾø¶ÔµÄ¡£ÎÒÃÇÏÈ¿´ÏÂÃæµÄÀý×Ó£º
#include
int __cdecl CDeclFunction()
{
printf("from CDecl function\n");
return 1;
}
int main()
{
printf("Begin call STDCall function\n");
typedef int(__stdcall * STDCALLFUNCTION)();
STDCALLFUNCTION pfn =(STDCALLFUNCTION)CDeclFunction;
int i=pfn();
printf("End call STDCall function\n");
return i;
}
ÕâÊÇÒ»¸ö¼òµ¥µÄº¯Êýµ÷ÓõÄÀý×Ó£¬Î¨Ò»ÌرðµÄµØ·½ÊǺ¯Êý¶¨ÒåΪ__cdecl£¬¶øµ÷ÓÃʱ²ÉÓÃ__stdcall·½Ê½¡£ÎÒÃǰÑÕâ¶Î´úÂë±àÒëºóÖ´ÐС£àÀ£¬Ò»ÇÐÕý³£¡£Èç¹ûÄú²»·þÆø£¬ÔÙ¼ÓÒ»¸öforÑ­»·¿´¿´J
ÎÒÃÇÔÙÀ´¿´ÁíÒ»¸ö¸üÌØ±ðµÄÀý×Ó£º
#include
int __stdcall StdCallFunction (int i, char* pszString)
{
printf("from STDCall function\n");
printf(pszString);
return i;
}
int main()
{
printf("Begin call FastCall function\n");
typedef int(__fastcall * FASTCALLFUNCTION)(int, int, int, char*);
FASTCALLFUNCTION pfn =(FASTCALLFUNCTION)StdCallFunction;
int i=pfn(0,0,3,"test\n");
printf("End call FastCall function\n");
return i;
}
Õâ´Î²»¹âµ÷Ó÷½Ê½²»Í¬£¬Á¬²ÎÊýµÄ¸öÊý¶¼²»Ò»Ñù¡£±ðµ£ÐÄ£¬ÎÒÃDZàÒëºóÖ´ÐС£»¹ÊÇÒ»ÇÐÕý³££¡
Èç¹ûÄú¶ÔÉÏÊöÁ½¸öÀý×Ó°Ù˼²»µÃÆä½âµÄ»°£¬ÏÖÔÚ¸ÃÊǽ⿪ÃÕµ×µÄʱºòÁË¡£Õâ¸öÃÕµ×¾ÍÊǺ¯Êýµ÷ÓÃÔ¼¶¨±¾Éí¡£ÍøÉϽéÉܵ÷ÓÃÔ¼¶¨µÄ×ÊÁÏÒѾ­Ï൱¶àÁË£¬²»¹ý¼¸ºõ¶¼²àÖØ±È½Ï¸÷ÖÖµ÷Ó÷½Ê½µÄ²î±ð£¬¶ø±¾ÎĽ«°ÑÖØµã·ÅÔÚÕâЩµ÷Ó÷½Ê½Ö®¼äµÄÁªÏµÉÏÃæ£¨ÕâÀïÒ²ÂÔÈ¥Öî¶àÓëÖ÷ÌâÎ޹صÄϸ½Ú£¬ÒªÏëÁ˽⺯Êýµ÷ÓÃÔ¼¶¨µÄËùÓз½Ê½£¬ÏàÓ¦µÄ»ã±à´úÂ룬ÒÔ¼°ÔÚ²ÎÊý»ò·µ»ØÖµ³¬¹ý32λµÈ¸´ÔÓÇé¿öµÄ´¦Àí·½Ê½£¬Çë²éÔı¾ÎÄÁгöµÄ²Î¿¼ÊéÄ¿£©¡£
µ÷Óú¯Êýʱ£¬ÐèÒª´«µÝ²ÎÊý£¬²¢½ÓÊÕ·µ»ØÖµ¡£¶ÔÓÚC++ ·Ç¾²Ì¬³ÉÔ±º¯Êý£¬»¹Òª¿¼ÂÇÈçºÎ´«µÝthisÖ¸Õë¡£ÕâҪô²ÉÓüĴæÆ÷£¬ÒªÃ´²ÉÓöÑÕ»¡£Èç¹û²ÉÓöÑÕ»£¬»¹Òª¿¼ÂÇÓÉË­¸ºÔð»Ö¸´¶ÑÕ»µÄƽºâ¡£µ÷


Ïà¹ØÎĵµ£º

unix cѧϰָÄÏ (Êé¼®,ѧϰ·½·¨µÈ)

ÒýÑÔ
¾¡¹Ü C ÓïÑÔÎÊÊÀÒѽü 30 Ä꣬µ«ËüµÄ÷ÈÁ¦ÈÔδ¼õÍË¡£C ÓïÑÔ¼ÌÐøÎüÒý×ÅÖÚ¶àµÄ¿ª·¢Õߣ¬ËûÃÇΪÁ˱àд¡¢ÒÆÖ²»òά»¤Ó¦ÓóÌÐò¶ø±ØÐëѧϰм¼ÄÜ¡£
±¾ÎÄÊÇΪÁËÂú×ã¶ÔCÓïÑÔ³õѧÕß»òÏëÌá¸ß×ÔÉíCÓïÑÔÐÞΪµÄ¿ª·¢ÈËÔ±µÄÐèÒª¶øÐ´µÄ¡£Ï£Íû¶ÔÄúµÄѧϰºÍ¹¤×÷ÓÐËù°ïÖú¡£ÄúÒ²Ðí²»ÔÞͬÆäÖеÄijЩ·½·¨£¬µ«ÎÒÃÇÏ£ÍûÄú»áϲ»¶ÆäÖеÄһЩ¡£
±¾Î ......

GCC G++ C C++µÄÇø±ð

gcc ÊÇcµÄ±àÒëÆ÷£¬g++ÊÇc++µÄ±àÒëÆ÷¡£ccÒ»°ãÊÇÒ»¸ö·ûºÅÁ¬½Ó£¬Ö¸Ïògcc¡£ 
CCÒ»°ãÊÇmakefileÀïÃæµÄÒ»¸öÃû×Ö£¬¾ßÌåÊÇʲô¸ù¾Ýʵ¼ÊÇé¿ö¾ö¶¨¡£ 
gccºÍg++¶¼ÊÇGNU(×éÖ¯)µÄÒ»¸ö±àÒëÆ÷¡£ 
ÎóÇøÒ»:gccÖ»ÄܱàÒëc´úÂë,g++Ö»ÄܱàÒëc++´úÂë 
Á½Õß¶¼¿ÉÒÔ£¬µ«ÊÇÇë×¢Ò⣺ 
1,ºó׺Ϊ.cµÄ£¬gcc°ÑËüµ±×÷ÊÇC³ÌÐò£ ......

linux c socket ¿ª·¢Óë±àÒëʵÀý

ÕâÆªÈÕÖ¾»¹ÊÇÏÈ´ÓÒ»¸öÄܹ»ÔËÐÐÆðÀ´µÄÀý×Ó³ö·¢£¬Ò»µ©ÄÜ˳ÀûµÄ¿´µ½³ÌÐòµÄ³É¹¦ÔËÐУ¬ÄÇô½ÓÏÂÀ´µÄʼþÎÒÏëÓ¦¸ÃÊÇÎÊΪʲôÁË£¿ËƺõÕâÑù¸ü¼ÓÈÝÒ×Àí½âºÍÕÆÎÕ¡£
¶ÔÓÚsocket³ÌÐòµÄ¸ÅÄîÕâÀï¾Í²»¶àдÁË£¬µ«ÎÒÏàÐÅ£¬Èç¹ûÄÜ¿´ÍêÕâÕûƪÎÄÕ£¬ÎÒÏàÐŲ»»áÔÙÓÐÕâÑùµÄÒÉÎʵġ£
ÏÂÃæ½«±àдһ¸öc/s½á¹¹µÄ³ÌÐò£¬Ö÷Òª¹¦ÄÜÊÇclient½«Ïòserver·¢Ë ......

entry point to c/c++ or Fortran MEX file

http://www.mathworks.com/access/helpdesk/help/techdoc/apiref/mexfunction.html
mexFunction (C and Fortran) -
Entry point to C/C++ or Fortran MEX-file
C Syntax
#include "mex.h"
void mexFunction(int nlhs, mxArray *plhs[], int nrhs,
const mxArray *prhs[]);
Fortran
Syntax
subrouti ......

Õë¶ÔǶÈëʽSoCÓ¦ÓÃC±à³ÌÓÅ»¯¼°±àÒëÆ÷Ô­Àí

       ¿ª·¢ÔËÐÐÔÚSoCÄÚµÄǶÈëʽ´¦ÀíÆ÷Äں˵ijÌÐòʱ£¬¹¤³ÌʦÓÐÁ½¸öÖ÷ҪĿµÄ£ºÔËÐеÃ×ã¹»¿ì£¬Ê¹´¦ÀíÆ÷ÔËÐÐµÄÆµÂʽµµ½×îµÍ£»ÏûºÄ¾¡Á¿ÉÙµÄÄڴ棬ʹÄڴ濪Ïú½µµ½×îС¡£ 
      
         ¶ÔÓÚ²»Í¬µÄÏ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ