Windows C ¶àÏ̱߳à³ÌµÄ¿âÖ§³Ö
Windows C ¶àÏ̱߳à³ÌµÄ¿âÖ§³Ö
Ïß³ÌʵÖÊÉÏÊdzÌÐòÖеÄÖ´Ðз¾¶¡£Ò²ÊÇ Win32 °²ÅŵÄ×îСִÐе¥Ôª¡£Ḭ̈߳üÀ¨¶ÑÕ»¡¢CPU ¼Ä´æÆ÷µÄ״̬ºÍϵͳ¼Æ»®³ÌÐòÖ´ÐÐÁбíÖеÄÏÿ¸öÏ̹߳²ÏíËùÓнø³ÌµÄ×ÊÔ´¡£
½ø³Ì°üÀ¨Ò»¸ö»ò¶à¸öÏ̺߳ʹúÂë¡¢Êý¾ÝºÍÄÚ´æÖÐµÄÆäËû³ÌÐò×ÊÔ´¡£µäÐ͵ijÌÐò×ÊÔ´ÊÇ´ò¿ªµÄÎļþ¡¢ÐźŵƺͶ¯Ì¬·ÖÅäµÄÄÚ´æ¡£µ±ÏµÍ³¼Æ»®³ÌÐò¸øÓèÆäÖеÄÒ»¸öÏß³ÌÖ´ÐпØÖÆÊ±£¬¼´Ö´ÐгÌÐò¡£¼Æ»®³ÌÐòÈ·¶¨Ó¦µ±ÔËÐÐÄÄЩÏß³ÌÒÔ¼°ËüÃÇÓ¦µ±ºÎʱÔËÐС£½ÏµÍÓÅÏȼ¶µÄÏ߳̿ÉÄܱØÐëµÈµ½½Ï¸ßÓÅÏȼ¶µÄÏß³ÌÍê³ÉÈÎÎñºó²ÅÄÜÔËÐС£ÔÚ¶à´¦ÀíÆ÷¼ÆËã»úÉÏ£¬¼Æ»®³ÌÐò¿ÉÒÔ½«µ¥¸öÏß³ÌÒÆµ½²»Í¬µÄ´¦ÀíÆ÷Òԓƽºâ”CPU ¸ººÉ¡£
½ø³ÌÖеÄÿ¸öÏ̶߳¼¶ÀÁ¢ÔËÐС£³ý·ÇʹÕâЩÏß³ÌÏ໥¿É¼û£¬·ñÔòÏ̷ֱ߳ðÖ´ÐУ¬¶Ô½ø³ÌÖÐµÄÆäËûÏß³ÌÒ»ÎÞËùÖª¡£Ï̹߳²Ïí¹«¹²×ÊÔ´£¬µ«ÊÇ£¬±ØÐëʹÓÃÐźŵƻòÆäËû½ø³Ì¼äµÄͨÐÅ·½·¨Ðµ÷ËüÃǵŤ×÷¡£
1¡¢¶àÏ̱߳à³ÌµÄ¿âÖ§³Ö
Èç¹ûÔÚÖ´ÐÐ printf º¯ÊýʱÓÐÏ̱߳» Win32 ¼Æ»®³ÌÐò¹ÒÆð£¬Ôò³ÌÐòµÄÆäËûÏß³ÌÖеÄijһ¸ö¿ÉÄܻῪʼִÐС£Èç¹ûµÚ¶þ¸öÏß³ÌÒ²µ÷Óà printf£¬Êý¾Ý¿ÉÄÜ»áË𻵡£Îª±ÜÃâÕâÖÖÇé¿ö£¬±ØÐëÏÞÖÆ¶Ôº¯ÊýʹÓõľ²Ì¬Êý¾ÝµÄ·ÃÎÊ£¬Ò»´ÎÖ»ÔÊÐíÒ»¸öÏ̷߳ÃÎÊÊý¾Ý¡£
ÒòΪÿ¸öÏ߳̾ßÓв»Í¬µÄ¶ÑÕ»£¬ËùÒÔ²»ÐèÒªÐòÁл¯¶Ô»ùÓÚ¶ÑÕ»µÄ£¨×Ô¶¯£©±äÁ¿µÄ·ÃÎÊ¡£Òò´Ë£¬Ö»Ê¹ÓÃ×Ô¶¯£¨¶ÑÕ»£©±äÁ¿µÄº¯ÊýÊÇ¿ÉÖØÈëµÄ¡£±ê×¼ C ÔËÐÐʱ¿â£¨Èç LIBC£©µÄ¿ÉÖØÈ뺯ÊýµÄÊýÁ¿ÓÐÏÞ¡£¶ÔÓÚÐèҪʹÓÃͨ³£²»¿ÉÖØÈëµÄ C ÔËÐÐʱ¿âº¯ÊýµÄ¶àÏ̳߳ÌÐò£¬Ó¦¸ÃʹÓöàÏ߳̿â LIBCMT.LIB À´Éú³É¡£
¶àÏß³Ì C ¿â£ºLIBCMT.LIB ºÍ MSVCRT.LIB
Ö§³Ö¿â LIBCMT.LIB ÊÇ¿ÉÖØÈë¿â£¬ÓÃÓÚ´´½¨¶àÏ̳߳ÌÐò¡£µ÷Óù²ÏíµÄ MSVCRT70.DLL ÖдúÂëµÄ MSVCRT.LIB ¿âÒ²ÊÇ¿ÉÖØÈë¿â¡£µ±Ó¦ÓóÌÐòµ÷ÓÃÕâЩ¿âÖеĺ¯Êýʱ£¬¿ÉÒÔÓ¦ÓÃÏÂÁйæÔò£º
ËùÓпâµ÷ÓñØÐëʹÓà C (__cdecl) µ÷ÓÃÔ¼¶¨£»Ê¹ÓÃÆäËûµ÷ÓÃÔ¼¶¨£¨Èç __fastcall »ò __stdcall£©±àÒëµÄ³ÌÐò±ØÐëʹÓÃËüÃǵ÷ÓõÄÔËÐÐʱ¿âº¯ÊýµÄ±ê×¼°üº¬Îļþ¡£
´«µÝµ½¿âº¯ÊýµÄ±äÁ¿±ØÐëÓÉÖµ´«µÝ»òת»»ÎªÖ¸Õë¡£
ʹÓà LIBCMT.LIB Éú³ÉµÄ³ÌÐò²»ÓëËüÃÇËùµ÷ÓõÄÈκζ¯Ì¬Á´½Ó¿â¹²Ïí C ÔËÐÐʱ¿â´úÂë»òÊý¾Ý¡£
LIBCMT.LIB ºÍ MSVCRT.LIB ÒÔÍâµÄÆäËûÑ¡Ôñ
Èç¹û²»Ê¹Óà LIBCMT.LIB À´Éú³É¶àÏ̳߳ÌÐò£¬±ØÐëÖ´ÐÐÏÂÁвÙ×÷£º
ʹÓñê×¼ C ¿â²¢ÇÒÖ»ÔÊÐí¿ÉÖØÈ뺯Êý¼¯½øÐпâµ÷Óá£
ʹÓà Win32 API Ï̹߳ÜÀíº¯Êý£¬Èç CreateThread¡£
ͨ¹ýʹÓà Win32 ·þÎñ£¨ÈçÐÅºÅµÆºÍ EnterCriticalSection ¼° LeaveCriticalSection º¯Êý£
Ïà¹ØÎĵµ£º
¹ØÓÚCµÄ˼¿¼
Cong Wang
May, 2006
Network Engineering Department
Institute of Post and Telecommunications, Xi'an, P.R.China
ÒýÑÔ
CÓïÑÔ½áºÏÁË»ã±àµÄËùÓÐÍþÁ¦£¬ËüµÄ³éÏó³Ì¶ÈÅöÇɼÈÂú×ãÁ˳ÌÐòÔ±µÄÒªÇó, ÓÖÈÝÒ×ʵÏÖ¡£ÒòÆä¶ÀÌØµÄÁé»îÐÔºÍÇ¿´óµÄ¿ÉÒÆÖ²ÐÔ£¬ÏµÍ³³ÌÐòÔ±ºÍºÚ¿ÍÃǸüÊǶÔËüÖÓ°® ......
¸Õ´ÓÍøÉÏ¿´µ½cºÍjava»ì±àµÄÎÄÕ£¬¾Íؽ²»¿É´ýµÄ³¢ÊÔÁËһϡ£ºÇºÇ£¬Ð§¹û»¹ÊǺܺõġ£ÏÂÃæ½«×Ô¼º³É¹ûÕ³Ìù³öÀ´
£¨×ªÔØÓÚhttp://www.zxbc.cn/html/20070518/19986.html£©¡£ÊµÑéÖ®ºó¿ÉÒÔͨ¹ý¡£
1javaÖе÷ÓÃcÓïÑÔ
Ê×ÏȱàдMain.java
public class Main
{
public native static int getStrNum(byte str[], int s ......
Ê×ÏÈ¡¢ÎÒÃÇ¿´32λµÄÕûÊý£ºint ¡¢unsigned int¡¢long¡¢unsigned long ¡£ÕâЩ¶¼ÊÇ»ù±¾ÀàÐÍ£¬Ã»ÓÐunsigned¹Ø¼ü×ÖµÄÊÇÓзûºÅµÄ£¬·´Ö®ÊÇÎÞ·ûºÅµÄ¡£»¹ÓбÈÈçDWORD¡¢ UINTÕâЩҲֻÊÇд±ðÃû£¨typedef£©¶øÒÑ¡£ÓзûºÅÕûÊýÖµµÃ×¢ÒâµÄÊÇʲô·¶Î§ÄÚÊÇÕýÊý£¬Ê²Ã´·¶Î§ÊǸºÊý¡£ÕâÑù¶ÔÓÚ¼Ó¼õÔËËã¡¢±È½ÏÔËËãµÈÓкܴó°ïÖú£¬·ñÔòºÜÈÝÒ×Òç³ö»òÕß± ......
ÒÔÏÂÈ«ÎÄ×ªÔØ×Ôhttp://www.keil.com/support/docs/1671.htm Copyright © 2010 Keil™, An ARM® Company.
Information in this article applies to:
C51 Version 6.02
&mi ......
C++µÄstaticÓÐÁ½ÖÖÓ÷¨£ºÃæÏò¹ý³Ì³ÌÐòÉè¼ÆÖеÄstaticºÍÃæÏò¶ÔÏó³ÌÐòÉè¼ÆÖеÄstatic¡£Ç°ÕßÓ¦ÓÃÓÚÆÕͨ±äÁ¿ºÍº¯Êý£¬²»Éæ¼°ÀࣻºóÕßÖ÷Ҫ˵Ã÷staticÔÚÀàÖеÄ×÷Óá£
Ò»¡¢ÃæÏò¹ý³ÌÉè¼ÆÖеÄstatic
1¡¢¾²Ì¬È«¾Ö±äÁ¿
ÔÚÈ«¾Ö±äÁ¿Ç°£¬¼ÓÉϹؼü×Östatic£¬¸Ã±äÁ¿¾Í±»¶¨Òå³ÉΪһ¸ö¾²Ì¬È«¾Ö±äÁ¿¡£ÎÒÃÇÏȾÙÒ»¸ö¾²Ì¬È«¾Ö±äÁ¿µÄÀý×Ó£¬ÈçÏ£º ......