GNU/Linuxƽ̨µÄC³ÌÐò¿ª·¢¼°³ÌÐòÔËÐл·¾³
±¾ÎĽéÉÜÔÚGNU/Linux»·¾³ÏÂÒ»¸öC³ÌÐòÓÉÔ´´úÂëµ½³ÌÐò£¬µ½¼ÓÔØÔËÐУ¬×îºóÖÕÖ¹µÄ¹ý³Ì¡£Í¬Ê±ÒԴ˹ý³ÌΪÔØÌ壬½éÉÜGNU/Linuxƽ̨ÏÂÈí¼þ¿ª·¢¹¤¾ßµÄʹÓá£
±¾ÎÄÒÔÎÒÃÇ×î³£¼ûµÄhello, world!ΪÀý£º
#include <stdio.h>
main ()
{
printf(“hello, world!\n”);
}
C³ÌÐòÉú³É
ÏÂͼÊÇÒ»¸öÓÉCÔ´´úÂëת»¯Îª¿ÉÖ´ÐÐÎļþµÄ¹ý³Ì£º
´úÂë±à¼: ±È½ÏÁ÷Ðеıà¼Æ÷ÊÇGNU EmacsºÍvim¡£Emacs¾ßÓзdz£Ç¿´óµÄ¹¦ÄÜ£¬²¢ÇÒ¿ÉÀ©Õ¹¡£
±àÒ룺°üÀ¨±àÒëÔ¤´¦Àí£¬±àÒ룬»ã±à£¬Á¬½Ó¹ý³Ì¡£ËüÃǶ¼¿ÉÒÔͨ¹ýGCCÀ´ÊµÏÖ¡£¹ØÓÚGCC£¬¿ÉÒԲο¼ÎÒ¹ØÓÚGCCµÄ±Ê¼Ç¡£
C±àÒëÆ÷½«Ô´Îļþת»»ÎªÄ¿±êÎļþ£¬Èç¹ûÓжà¸öÄ¿±êÎļþ£¬±àÒëÆ÷»¹½«ËüÃÇÓëËùÐèµÄ¿âÏàÁ¬½Ó£¬Éú³É¿ÉÖ´ÐÐÄ£¿é¡£µ±³ÌÐòÖ´ÐÐʱ£¬²Ù×÷ϵͳ½«¿ÉÖ´ÐÐÄ£¿é¿½±´µ½ÄÚ´æÖеijÌÐòÓ³Ïó¡£
³ÌÐòÓÖÊÇÈçºÎÖ´ÐеÄÄØ£¿Ö´ÐÐÖеijÌÐò³Æ֮Ϊ½ø³Ì¡£³ÌÐòת»¯Îª½ø³ÌµÄ²½ÖèÈçÏÂ:
1£¬ Äں˽«³ÌÐò¶ÁÈëÄڴ棬Ϊ³ÌÐò¾µÏñ·ÖÅäÄÚ´æ¿Õ¼ä¡£
2£¬ ÄÚºËΪ¸Ã½ø³Ì·ÖÅä½ø³Ì±êÖ¾·û£¨PID£©¡£
3£¬ ÄÚºËΪ¸Ã½ø³Ì±£´æPID¼°ÏàÓ¦µÄ½ø³Ì״̬ÐÅÏ¢¡£
¾¹ýÉÏÊö²½Ö裬³ÌÐòת±äΪ½ø³Ì£¬¼´¿ÉÒÔ±»µ÷¶ÈÖ´ÐС£
ÉÏÊöµÄhello, world³ÌÐòʵ¼ÊÊDz»¹æ·¶µÄ£¬POSIX¹æ¶¨mainº¯ÊýµÄÔÐÍΪ£º
int main( int argc, char *argv[])
argcÊÇÃüÁîÐвÎÊýµÄ¸öÊý£¬argvÊÇÒ»¸öÖ¸ÕëÊý×飬ÿ¸öÖ¸ÕëÔªËØÖ¸ÏòÒ»¸öÃüÁîÐвÎÊý¡£
e.g: $ ./a.out arg1 arg2
argc = 4
argv[0] = ./a.out argv[1] = arg1 argv[2] = arg2
C³ÌÐòµÄ¿ªÊ¼¼°ÖÕÖ¹
³ÌÐòµÄÔËÐУº
ΨһÈë¿Ú£ºexecº¯Êý×壨°üÀ¨execl, execv, execle, execve, execlp, execvp£©
³ÌÐò¿ªÊ¼Ö´ÐÐʱ£¬ÔÚµ÷ÓÃmainº¯Êý֮ǰ»áÔËÐÐCÆô¶¯Àý³Ì£¬¸ÃÀý³Ì½«ÃüÁîÐвÎÊýºÍ»·¾³±äÁ¿´ÓÄں˴«µÝµ½mainº¯Êý¡£
³ÌÐòµÄÖÕÖ¹£ºÓÐ8ÖÖ;¾¶£º
Õý³£ÖÕÖ¹£º
1£¬ ´Ómain·µ»Ø¡£
2£¬ µ÷ÓÃexit¡£
3£¬ µ÷ÓÃ_exit»ò_Exit¡£
4£¬ ´Ó×îºóÒ»¸öÏ̵߳ĿªÊ¼Àý³Ì·µ»Ø¡£
Òì³£ÖÕÖ¹£º
5£¬ µ÷ÓÃabort¡£
6£¬ ½ÓÊÕµ½Ò»¸öÖÕÖ¹Ðźš£
7£¬ ¶Ô×îºóÒ»¸öÏ̷߳¢³öµÄÈ¡ÏûÇëÇó×ö³öÏìÓ¦¡£
_exi
Ïà¹ØÎĵµ£º
»¹²»ÊÇÌ«»áÓÃÕâ¸öcgywin.
------------------------------------------
UÅÌÉϵÄÒƶ¯linux»·¾³£¨cygwinƪ£©
ËäÈ»ÔÚ×Ô¼ºµÄ±¾±¾ÉÏ×°ºÃÁËubuntu£¬µ«ÊÇÔÚµ¥Î»µÄ»ú×ÓÉϹ¤×÷ʱ£¬»¹ÊÇÓõÄwindows£¬ÎÞ·¨Ê¹ÓÃÇ¿´óµÄSHELL¡£ÓÚÊǾͣ¬ÏëÆðÁËcygwinÁË¡£µ«ÊÇ£¬ÎÒ×ܲ»Äܸøÿһ̨»úÆ÷×°cygwin°É¡£ÓÚÊǺõ£¬¾Í²úÉú°Ñcygwin×°½øUÅ̵ÄÏë·¨¡£×Ô ......
mount -t iso9660 /dev/cdrom /mnt/cdrom ¹Ò¹âÇý
mount -t vfat /dev/fd0 /mnt/floppy ¹ÒÈíÇý (ÎļþÄÚÐÍ¿ÉÒÔ×Ô¼ºÑ¡)
mount -t vfat -o rw,utf8,umask=000 /dev/sda1 ......
½øÈëviµÄÃüÁî
vi filename :´ò¿ª»òн¨Îļþ£¬²¢½«¹â±êÖÃÓÚµÚÒ»ÐÐÊ×
vi +n filename £º´ò¿ªÎļþ£¬²¢½«¹â±êÖÃÓÚµÚnÐÐÊ×
vi + filename £º´ò¿ªÎļþ£¬²¢½«¹â±êÖÃÓÚ×îºóÒ»ÐÐÊ×
vi +/pattern filename£º´ò¿ªÎļþ£¬²¢½«¹â±êÖÃÓÚµÚÒ»¸öÓëpatternÆ¥ÅäµÄ´®´¦
vi -r filename £ºÔÚÉÏ´ÎÕýÓÃvi±à¼Ê±·¢Éúϵͳ±ÀÀ££¬»Ö¸´filen ......
tar [-cxtzjvfpPN] ÎļþÓëĿ¼ ....
²ÎÊý£º
-c £º½¨Á¢Ò»¸öѹËõÎļþµÄ²ÎÊýÖ¸Áî(create µÄÒâ˼)£»
-x £º½â¿ªÒ»¸öѹËõÎļþµÄ²ÎÊýÖ¸Á
-t £º²é¿´ tarfile ÀïÃæµÄÎļþ£¡
Ìرð×¢Ò⣬ÔÚ²ÎÊýµÄÏ´ïÖУ¬ c/x/t ½öÄÜ´æÔÚÒ»¸ö£¡²»¿Éͬʱ´æÔÚ£¡
ÒòΪ²»¿ÉÄÜͬʱѹËõÓë½âѹËõ¡£
-z £ºÊÇ·ñͬʱ¾ßÓÐ gzip µÄÊôÐÔ£¿Ò༴ÊÇ·ñÐ ......
ÕâÁ½ÌìÅöµ½Ò»¸öСÎÊÌ⿨ÁËÎÒÀÏ°ëÌì……¾ÍÊÇLINUXÏÂPHP³ÌÐòÓëÆäËû³ÌÐòͨÐÅ¡£
ÎÒÃÇÐèҪʵÏÖÓû§ÔÚWEBÒ³ÃæÉϽøÐвÙ×÷ʱ¿ÉÒÔÆôÓÃÎÒÃÇÔÚ·þÎñÆ÷¶ËµÄºǫ́³ÌÐò£¨ÓÃC¡¢C++±àд£©¡£
֮ǰÔÚwindowsÏ£¬ÒѾʹÓÃÃüÃû¹ÜµÀʵÏÖ£¨Çë¼ûÎÒ֮ǰµÄ²©ÎÄhttp://blog.csdn.net/rcfalcon/archive/2010/02/09/5303142.aspx£©£¬Õâ´Î½«· ......