extern "C"
ΪʲôÐèҪʹÓÃextern "C"ÄØ£¿C++Ö®¸¸ÔÚÉè¼ÆC++֮ʱ£¬¿¼Âǵ½µ±Ê±ÒѾ´æÔÚÁË´óÁ¿µÄC´úÂ룬ΪÁËÖ§³ÖÔÀ´µÄC´úÂëºÍÒѾдºÃC¿â£¬ÐèÒªÔÚC++Öо¡¿ÉÄܵÄÖ§³ÖC£¬¶øextern "C"¾ÍÊÇÆäÖеÄÒ»¸ö²ßÂÔ¡£
¡¡¡¡ÊÔÏëÕâÑùµÄÇé¿ö:Ò»¸ö¿âÎļþÒѾÓÃCдºÃÁ˶øÇÒÔËÐеúÜÁ¼ºÃ£¬Õâ¸öʱºòÎÒÃÇÐèҪʹÓÃÕâ¸ö¿âÎļþ£¬µ«ÊÇÎÒÃÇÐèҪʹÓÃC++À´Ð´Õâ¸öеĴúÂë¡£Èç¹ûÕâ¸ö´úÂëʹÓõÄÊÇC++µÄ·½Ê½Á´½ÓÕâ¸öC¿âÎļþµÄ»°£¬ÄÇô¾Í»á³öÏÖÁ´½Ó´íÎó.ÎÒÃÇÀ´¿´Ò»¶Î´úÂë:Ê×ÏÈ£¬ÎÒÃÇʹÓÃCµÄ´¦Àí·½Ê½À´Ð´Ò»¸öº¯Êý£¬Ò²¾ÍÊÇ˵¼ÙÉèÕâ¸öº¯Êýµ±Ê±ÊÇÓÃCд³ÉµÄ:
//f1.c
extern "C"
{
void f1()
{
return;
}
}
¡¡¡¡±àÒëÃüÁîÊÇ:gcc -c f1.c -o f1.o ²úÉúÁËÒ»¸ö½Ðf1.oµÄ¿âÎļþ¡£ÔÙдһ¶Î´úÂëµ÷ÓÃÕâ¸öf1º¯Êý:
// test.cxx
//Õâ¸öextern±íʾf1º¯ÊýÔÚ±ðµÄµØ·½¶¨Ò壬ÕâÑù¿ÉÒÔͨ¹ý
//±àÒ룬µ«ÊÇÁ´½ÓµÄʱºò»¹ÊÇÐèÒª
//Á´½ÓÉÏÔÀ´µÄ¿âÎļþ.
extern void f1();
int main()
{
f1();
return 0;
}
¡¡¡¡Í¨¹ýgcc -c test.cxx -o test.o ²úÉúÒ»¸ö½Ðtest.oµÄÎļþ¡£È»ºó£¬ÎÒÃÇʹÓÃgcc test.o f1.oÀ´Á´½ÓÁ½¸öÎļþ£¬¿ÉÊdzö´íÁË£¬´íÎóµÄÌáʾÊÇ:
test.o(.text + 0x1f):test.cxx: undefine reference to 'f1()'
¡¡¡¡Ò²¾ÍÊÇ˵£¬ÔÚ±àÒëtest.cxxµÄʱºò±àÒëÆ÷ÊÇʹÓÃC++µÄ·½Ê½À´´¦Àíf1()º¯ÊýµÄ£¬µ«ÊÇʵ¼ÊÉÏÁ´½ÓµÄ¿âÎļþÈ´ÊÇÓÃCµÄ·½Ê½À´´¦Àíº¯ÊýµÄ£¬ËùÒԾͻá³öÏÖÁ´½Ó¹ý²»È¥µÄ´íÎó:ÒòΪÁ´½ÓÆ÷ÕÒ²»µ½º¯Êý¡£
¡¡¡¡Òò´Ë£¬ÎªÁËÔÚC++´úÂëÖе÷ÓÃÓÃCд³ÉµÄ¿âÎļþ£¬¾ÍÐèÒªÓÃextern "C"À´¸æËß±àÒëÆ÷:ÕâÊÇÒ»¸öÓÃCд³ÉµÄ¿âÎļþ£¬ÇëÓÃCµÄ·½Ê½À´Á´½ÓËüÃÇ¡£
¡¡¡¡±ÈÈ磬ÏÖÔÚÎÒÃÇÓÐÁËÒ»¸öC¿âÎļþ£¬ËüµÄÍ·ÎļþÊÇf.h£¬²úÉúµÄlibÎļþÊÇf.lib£¬ÄÇôÎÒÃÇÈç¹ûÒªÔÚC++ÖÐʹÓÃÕâ¸ö¿âÎļþ£¬ÎÒÃÇÐèÒªÕâÑùд:
extern "C"
{
#include "f.h"
}
¡¡¡¡»Øµ½ÉÏÃæµÄÎÊÌ⣬Èç¹ûÒª¸ÄÕýÁ´½Ó´íÎó£¬ÎÒÃÇÐèÒªÕâÑù×Ó¸Äдtest.cxx:
extern "C"
{
extern void f1();
}
int main()
{
f1();
return 0;
}
¡¡¡¡ÖØÐ±àÒë²¢ÇÒÁ´½Ó¾Í¿ÉÒÔ¹ýÈ¥ÁË.
¡¡¡¡×ܽá
¡¡¡¡CºÍC++¶Ôº¯ÊýµÄ´¦Àí·½Ê½ÊDz»Í¬µÄ.extern "C"ÊÇʹC++Äܹ»µ÷ÓÃCд×÷µÄ¿âÎļþµÄÒ»¸öÊֶΣ¬Èç¹ûÒª¶Ô±àÒëÆ÷ÌáʾʹÓÃCµÄ·½Ê½À´´¦Àíº¯ÊýµÄ»°£¬ÄÇô¾ÍҪʹÓÃextern "C"À´ËµÃ÷¡£
±¾ÎÄת×Ô£ºhttp://www.diybl.com/course/3_program/c++/cppsl/2008810/135631.html
Ïà¹ØÎĵµ£º
×î½üÒ»¸öÅóÓÑ×¼±¸°ÑC´úÂëÔÚECLIPSEÉϱàÒ룬ÒÔǰһֱ¸ãµÄJAVA£¬Ò²ÖªµÀECLIPSEÖ§³ÖC¹¤³Ì£¬µ«ÊÇ×Ô¼º´ÓÀ´Ã»¸ã¹ý£¬ËùÒÔ¾Í×Ô¼ºÏÈ´ÓÍøÂçÉÏÕÒ×ÊÁÏ£¬Ö÷Òª·½·¨ÈçÏÂ
1¡¢°²×°JDKºÍEclipse
ÕâÀï¾Í²»¶à˵£¬¾ßÌåÇë¼û£ºhttp://blog.chinaunix.net/u/16292/showart_223309.html
Îҵݲװ»·¾³ÊÇjdk1.5£¬eclipse3.2.1
2¡¢°²×°C++µÄE ......
1,·ÀÖ¹Ò»¸öÍ·Îļþ±»Öظ´°üº¬
#ifndef COMDEF_H
#define COMDEF_H
//Í·ÎļþÄÚÈÝ
#endif
2,ÖØÐ¶¨ÒåһЩÀàÐÍ,·ÀÖ¹ÓÉÓÚ¸÷ÖÖÆ½Ì¨ºÍ±àÒëÆ÷µÄ²»Í¬,¶ø²úÉúµÄÀàÐÍ×Ö½ÚÊý²îÒì,·½±ãÒÆÖ²¡£
typedef unsigned char boolean; /* Boolean value type. */
typedef ......
1.Çø±ð(Ö÷ÒªµÄ):Ö¸ÕëÐèÒªÔö¼ÓÒ»´Î¶îÍâµÄÌáÈ¡²Ù×÷
±àÒëÆ÷Ϊÿ¸ö±äÁ¿·ÖÅäÒ»¸öµØÖ·(×óÖµ)¡£Õâ¸öµØÖ·±àÒëʱ¿ÉÖª£¬¶øÇҸñäÁ¿ÔÚÔËÐÐʱһֱ±£´æÓÚÕâ¸öµØÖ·¡£Ïà·´£¬´æ´¢ÓÚ±äÁ¿ÖеÄÖµ(ËüµÄÓÒÖµ)Ö»ÓÐÔÚÔËÐÐʱ²Å¿ÉÖª¡£Èç¹ûÐèÒªÓõ½±äÁ¿Öд洢µÄÖµ£¬±àÒëÆ÷¾Í·¢³öÖ¸Áî´ÓµØÖ·¶ÁÈë±äÁ¿Öµ²¢½«Ëü´æÓڼĴæÆ÷ÖС£
  ......
ÍøÂí¼ÓÃÜÖУ¬Ä¿Ç°Óиöfunction(p,a,c,k,e,d)µÄ£¬·Ç³£ÌÖÑᣬÎÒÒ²ÊÇÉî¶ñÍ´¾ø£¬¼ÇµÃÎÒ¸Õ¿ªÊ¼Åöµ½ËüµÄʱºò£¬Æ´ÃüµØ¶Áº¯Êý£¬ÄǸö½ÐÍ´¿à°¡£¬¿Ä¿Ä°í°íµØÃãÇ¿¸ãÁ˳öÀ´¡£½ñÌ죬ͻȻ¿´¼ûÁËfunction(p,a,c,k,e,d)µÄ½âÃÜ´úÂ룬¸ßÐ˶¼À´²»¼°
<script>
a=62;
function encode() {
var code = document.getElementById('code' ......
ÎÊÌâÃèÊö£ºÒ»Ë³ÐòÎļþÖÐÖÁ¶à´æÔÚ10000000¸ö¼Ç¼£¬Ã¿Ìõ¼Ç¼¶¼ÊÇÒ»¸ö7λÕûÊý£¬Çë¶Ô´ËÎļþÖÐÊý¾Ý½øÐÐÅÅÐò¡£
ÒªÇó£º1.³ÌÐò¿ÉʹÓÃÄÚ´æÖ»ÓÐ1MB¡£2.³ÌÐòÔËÐÐʱ¼ä¾¡¿ÉÄܵĶ̡£
²¹³ä˵Ã÷£ºÃ¿¸ö¼Ç¼¶¼ÊÇÒ»¸ö7λÕýÕûÊý£¬²¢ÇÒûÓÐÆäËûµÄ¹ØÁªÊý¾Ý£¬Ã¿¸öÕûÊýÖÁ¶àÖ»ÄܳöÏÖÒ»´Î¡£
ʵÏÖ¸ÙÒª£º
ÔÚÏÖʵÖУ¬Î»Í¼ºÍλÏòÁ¿ºÜ³£¼û£¬ÎÒÃÇ¿ÉÒÔÊ¹Ó ......