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

LinuxÏÂCºÍC++¿ª·¢»ù´¡

LinuxÏÂCºÍC++¿ª·¢»ù´¡
»ù±¾±à³Ì¸ÅÄî
n ±à³ÌÓïÑÔ£ºC ¡¢C++
n ±àÒë(compile)£ºÔ´Îļþ£¨.c£©->Ä¿±êÎļþ(.o)
n Á¬½Ó(link)£ºÄ¿±êÎļþ(.o)->¿ÉÖ´ÐÐÎļþ
n ¿â(library)£º¾²Ì¬Á¬½Ó¿â(.a)¡¢¶¯Ì¬Á¬½Ó¿â(.so)
LinuxÏ¿ª·¢¹¤¾ß
n±à¼­Æ÷£ºvi¡¢emacs¡¢´°¿Ú±à¼­Æ÷
n±àÒëÆ÷£ºGCC
nµ÷ÊÔÆ÷£ºGDB
n¿ÉÖ´ÐÐÎļþ¹¤¾ß£ºBinutils
nÁ¬½ÓÆ÷£ºld
n»ã±à³ÌÐò£ºas
n¿â¹ÜÀí¹¤¾ß£ºar
n¿ÉÖ´ÐÐÎļþ·ûºÅ¹ÜÀí£ºnm
nÏÔʾ¿ÉÖ´ÐÐÎļþÐÅÏ¢£ºobjdump
¼òµ¥³ÌÐòʾÀý(CÓïÑÔ)£º
n hello.c
/***************************
C´úÂë
££i nclude <stdio.h>   
int main(int argc,char **argv)   
{   
printf("HelloWorld!\n");   
return 0;   
}   
/***************************   
n±àÒë·½·¨£ºgcc –o hello hello.c   
nÔËÐз½·¨£º./hello   
¼òµ¥³ÌÐòʾÀý(C++ÓïÑÔ)£º  
££i nclude <stdio.h>
int main(int argc,char **argv)
{
printf("HelloWorld!\n");
return 0;
}
/***************************
n±àÒë·½·¨£ºgcc –o hello hello.c
nÔËÐз½·¨£º./hello
¼òµ¥³ÌÐòʾÀý(C++ÓïÑÔ)£º
n hello.cpp
/*******************************
C´úÂë
££i nclude <iostream>   
using namespace std;   
int main(int argc,char **argv)   
{   
cout << "Hello World!“ << endl;   
return 0;   
}  
££i nclude <iostream>
using namespace std;
int main(int argc,char **argv)
{
cout << "Hello World!“ << endl;
return 0;
}
/*******************************
n ±àÒë·½·¨£ºg++ –o hello hello.cpp
n ÔËÐз½·¨£º./hello
GCC±àÒëÆ÷
n GNUƽ̨ÏÂÖ÷Á÷±àÒëÆ÷
nĿǰ×îÐÂÎȶ¨°æ4.0
n¹Ù·½ÍøÕ¾£ºhttp://gcc.gnu.org
nÖ§³Ö±àÒëÓïÑÔ£ºC¡¢C++¡¢Objective-C¡¢
Objective-C++¡¢Java¡¢Fortran¡¢Ada
n¿çƽ̨֧³Ö£ºÖ§³Ö¼¸ºõËùÓÐÖ÷Á÷²Ù×÷ϵͳ£¬Èç
Linux¡¢UNIX¡¢WindowsµÈ¡£Ö§³Ö¶àÖÖÓ²¼þƽ
̨£¬ÈçX86¡¢ARM¡¢PPC¡¢MIPSµÈ
n½»²æ±àÒë


Ïà¹ØÎĵµ£º

linux 0.11 ÄÚºËѧϰ asm.s£¬»úÆ÷ÄÑÃâ³ö¹ÊÕÏ¡£


/*
 *  linux/kernel/asm.s
 *
 *  (C) 1991  Linus Torvalds
 */
/*
 * asm.s contains the low-level code for most hardware faults.
 * page_exception is handled by the mm, so that isn't here. This
 * file also handles (hopefully) fpu-exceptions ......

linux 0.11 ÄÚºËѧϰ sched.c£¬µ÷¶È½ø³Ì¡£


/*
 * 2010-1-21
 * ¸ÃÎļþʱÄÚºËÖÐÓйØÈÎÎñµ÷¶ÈµÄº¯Êý³ÌÐò£¬ÆäÖаüº¬»ù±¾º¯Êýsleep_on£¬
 * wakeup£¬scheduleµÈ£¬ÒÔ¼°Ò»Ð©¼òµ¥µÄϵͳµ÷Óá£Í¬Ê±½«ÈíÅ̵ö²Ù×÷
 * º¯ÊýÒ²·ÅÖÃÔÚÕâÀï¡£
 * 
 * scheduleº¯ÊýÊ×ÏȶÔËùÓеÄÈÎÎñ¼ì²é£¬»½ÐÑÈκÎÒ»¸öÒѾ­µÃµ½ÐźŵÄÈÎÎñ£¬
 * ......

TinyXML£ºÒ»¸öÓÅÐãµÄC++ XML½âÎöÆ÷


TinyXML£ºÒ»¸öÓÅÐãµÄC++ XML½âÎöÆ÷
¶ÁÈ¡ºÍÉèÖÃxmlÅäÖÃÎļþÊÇ×î³£ÓõIJÙ×÷£¬ÊÔÓÃÁ˼¸¸öC++µÄXML½âÎöÆ÷£¬¸öÈ˸оõTinyXMLÊÇʹÓÃÆðÀ´×îÊæ·þµÄ£¬ÒòΪËüµÄAPI½Ó¿ÚºÍJavaµÄÊ®·ÖÀàËÆ£¬ÃæÏò¶ÔÏóÐԺܺá£
TinyXMLÊÇÒ»¸ö¿ªÔ´µÄ½âÎöXMLµÄ½âÎö¿â£¬Äܹ»ÓÃÓÚC++£¬Äܹ»ÔÚWindows»òLinuxÖбàÒë¡£Õâ¸ö½âÎö¿âµÄÄ£ÐÍͨ¹ý½âÎöXMLÎļþ£¬È»ºóÔ ......

C×Ö·û´®´¦Àíº¯ÊýµÄʵÏÖ£¨Linux£©

C×Ö·û´®´¦Àíº¯ÊýµÄʵÏÖ£¨Linux£©
#include <stddef.h>
char * ___strtok = NULL;

char * strcpy(char * dest,const char *src)
{
char *tmp = dest;

while ((*dest++ = *src++) != '\0')
/* nothing */;
return tmp;
}

char * strncpy(char * des ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ