¾µäÅÅÐòËã·¨ CʵÏÖ
PART (1)
/*
===============================================
¾µäÅÅÐò˼Ï룬²¢ÓÃCÓïÑÔÖ¸ÕëʵÏÖÅÅÐòËã·¨
================================================
*/
/*
=============================================================================
Ïà¹ØÖªÊ¶½éÉÜ£¨ËùÓж¨ÒåֻΪ°ïÖú¶ÁÕßÀí½âÏà¹Ø¸ÅÄ²¢·ÇÑϸñ¶¨Ò壩£º
1¡¢Îȶ¨ÅÅÐòºÍ·ÇÎȶ¨ÅÅÐò
¼òµ¥µØËµ¾ÍÊÇËùÓÐÏàµÈµÄÊý¾¹ýijÖÖÅÅÐò·½·¨ºó£¬ÈÔÄܱ£³ÖËüÃÇÔÚÅÅÐò֮ǰµÄÏà¶Ô´ÎÐò£¬ÎÒÃǾÍ
˵ÕâÖÖÅÅÐò·½·¨ÊÇÎȶ¨µÄ¡£·´Ö®£¬¾ÍÊÇ·ÇÎȶ¨µÄ¡£
±ÈÈ磺һ×éÊýÅÅÐòǰÊÇa1,a2,a3,a4,a5£¬ÆäÖÐa2=a4£¬¾¹ýijÖÖÅÅÐòºóΪa1,a2,a4,a3,a5£¬
ÔòÎÒÃÇ˵ÕâÖÖÅÅÐòÊÇÎȶ¨µÄ£¬ÒòΪa2ÅÅÐòǰÔÚa4µÄÇ°Ãæ£¬ÅÅÐòºóËü»¹ÊÇÔÚa4µÄÇ°Ãæ¡£¼ÙÈç±ä³Éa1,a4,
a2,a3,a5¾Í²»ÊÇÎȶ¨µÄÁË¡£
2¡¢ÄÚÅÅÐòºÍÍâÅÅÐò
ÔÚÅÅÐò¹ý³ÌÖУ¬ËùÓÐÐèÒªÅÅÐòµÄÊý¶¼ÔÚÄڴ棬²¢ÔÚÄÚ´æÖе÷ÕûËüÃǵĴ洢˳Ðò£¬³ÆÎªÄÚÅÅÐò£»
ÔÚÅÅÐò¹ý³ÌÖУ¬Ö»Óв¿·ÖÊý±»µ÷ÈëÄڴ棬²¢½èÖúÄÚ´æµ÷ÕûÊýÔÚÍâ´æÖеĴæ·Å˳ÐòÅÅÐò·½·¨³ÆÎªÍâÅÅÐò¡£
3¡¢Ëã·¨µÄʱ¼ä¸´ÔӶȺͿռ临ÔÓ¶È
ËùνËã·¨µÄʱ¼ä¸´ÔÓ¶È£¬ÊÇÖ¸Ö´ÐÐËã·¨ËùÐèÒªµÄ¼ÆË㹤×÷Á¿¡£
Ò»¸öËã·¨µÄ¿Õ¼ä¸´ÔÓ¶È£¬Ò»°ãÊÇÖ¸Ö´ÐÐÕâ¸öËã·¨ËùÐèÒªµÄÄÚ´æ¿Õ¼ä¡£
================================================================================
*/
/*
================================================
¹¦ÄÜ£ºÑ¡ÔñÅÅÐò
ÊäÈ룺Êý×éÃû³Æ£¨Ò²¾ÍÊÇÊý×éÊ×µØÖ·£©¡¢Êý×éÖÐÔªËØ¸öÊý
================================================
*/
/*
====================================================
Ë㷨˼Ïë¼òµ¥ÃèÊö£º
ÔÚÒªÅÅÐòµÄÒ»×éÊýÖУ¬Ñ¡³ö×îСµÄÒ»¸öÊýÓëµÚÒ»¸öλÖõÄÊý½»»»£»
È»ºóÔÚʣϵÄÊýµ±ÖÐÔÙÕÒ×îСµÄÓëµÚ¶þ¸öλÖõÄÊý½»»»£¬Èç´ËÑ»·
µ½µ¹ÊýµÚ¶þ¸öÊýºÍ×îºóÒ»¸öÊý±È½ÏΪֹ¡£
Ñ¡ÔñÅÅÐòÊDz»Îȶ¨µÄ¡£Ëã·¨¸´ÔÓ¶ÈO(n2)--[nµÄƽ·½]
=====================================================
*/
void select_sort(int *x, int n)
{
int i, j, min, t;
for (i=0; i<n-1; i++) /*ҪѡÔñµÄ´ÎÊý£º0~n-2¹²n-1´Î*/
{
min = i; /*¼ÙÉ赱ǰϱêΪiµÄÊý×îС£¬±È½ÏºóÔÙµ÷Õû*/
for (j=i+1; j<n; j++)/*Ñ»·ÕÒ³ö×îСµÄÊýµÄϱêÊÇÄĸö*/
{
if (*(x+j) < *(x+min))
Ïà¹ØÎĵµ£º
ÒýÑÔ
¡¡¡¡Ö¸ÕëÊÇC/C++ÓïÑÔµÄÌØÉ«£¬¶øÊý×éÃûÓëÖ¸ÕëÓÐÌ«¶àµÄÏàËÆ£¬ÉõÖÁºÜ¶àʱºò£¬Êý×éÃû¿ÉÒÔ×÷ΪָÕëʹÓá£ÓÚÊǺõ£¬ºÜ¶à³ÌÐòÉè¼ÆÕ߾ͱ»¸ãºýÍ¿ÁË¡£¶øÐí¶àµÄ´óѧÀÏʦ£¬ËûÃÇÔÚCÓïÑԵĽÌѧ¹ý³ÌÖÐÒ²´íÎóµÃ¸øÑ§Éú½²½â£º"Êý×éÃû¾ÍÊÇÖ¸Õë"¡£ºÜÐÒÔË£¬ÎҵĴóѧÀÏʦ¾ÍÊÇÆäÖÐÖ®Ò»¡£Ê±ÖÁ½ñÈÕ£¬ÎÒÈÕ¸´Ò»ÈյؽøÐÐ×ÅC/C++ÏîÄ¿µÄ¿ª·¢£¬¶øÉí±ß» ......
9.2 ¹²ÓÃÌå
CÓïÑÔ³ýÁËÌṩ½á¹¹ÌåÕâÖֿɰüº¬¶àÖÖÀàÐÍÊý¾ÝµÄ¹¹ÔìÀàÐÍÍ⣬»¹ÌṩÁËÒ»ÖÖ´ÓÐÎʽÉÏ¿´ºÍ½á¹¹Ìå¿°³Æ“ÂÏÉúÐֵܔµÄ¹¹ÔìÀàÐÍ——¹²ÓÃÌ壨union£©¡£
±¾½Ú´Ó¹²ÓÃÌåµÄ¸ÅÄîÈëÊÖ£¬´Ó¹²ÓÃÌåµÄ¸ÅÄî¡¢Óë½á¹¹ÌåµÄÒìͬ¡¢Ê¹Óõȷ½Ãæ½øÐÐÏêϸµÄ½éÉÜ¡£
9.2.1 ʲôÊǹ²ÓÃÌå
ÏÖʵÉú»îÖУ¬Ä³Ð©Ê ......
1. ʲôÊÇ¿ÕÖ¸Õë³£Á¿£¨null pointer constant£©?
[ 6.3.2.3-3] An integer constant expression with the value 0, or such an expression cast to type void *, is called a null pointer constant.
ÕâÀï¸æËßÎÒÃÇ£º0¡¢0L¡¢'\0'¡¢3 - 3¡¢0 * 17 £¨ËüÃǶ¼ÊÇ“integer constant expression”£©ÒÔ¼° ......
Fork º¯Êý£º
#include <unistd.h>
pid_t fork(void);
ÓÉfork ´´½¨µÄнø³Ì±»³ÆÎª×Ó½ø³Ì¡£fork º¯Êý±»µ÷ÓÃÁ½´Î£¬µ«ÊÇ·µ»ØÁ½´Î¡£Á½´Î·µ»ØµÄÎ¨Ò»Çø±ðÊÇ×Ó½ø³ÌµÄ·µ»ØÖµÊÇ0£¬¶ø¸¸½ø³ÌµÄ·µ»ØÖµÔòÊÇÐÂ×Ó½ø³ÌµÄID¡£½«×Ó½ø³ÌµÄID ·µ»Ø¸ø¸¸½ø³ÌµÄÀíÓÉÊÇ£ºÒ»¸ö½ø³Ì¿ÉÒÔÓжà¸ö×Ó½ø³Ì£¬²¢ÇÒûÓк¯ÊýÊÇÒ»¸ö½ø³Ì»ñµÃÆä×Ó½ø³ÌµÄ½ø³ ......
C ³ÌÐòÓÐÏÂÃæ¼¸¸ö²¿·Ö×é³É£º
1 ÕýÎĶΣºÕâÊÇCPU Ö´ÐеĻúÆ÷Ö¸ÁîµÄ²¿·Ö¡£Í¨³£ÕýÎĶÎÊÇ¿ÉÒÔ¹²ÏíµÄ£¬ËùÒÔ¼´Ê¹ÊÇÆµ·±Ö´ÐеijÌÐò£¨È磺Îı¾±à¼Æ÷£©ÔÚ´æ´¢Æ÷ÉÏÒ²Ö»ÓÐÒ»¸ö¸±±¾¡£ÁíÍâÕýÎĶγ£³£ÊÇÖ»¶ÁµÄ£¬ÒÔ·ÀÖ¹³ÌÐòÒòΪÒâÍâ¶øÐÞ¸ÄÆä×ÔÉíµÄÖ¸Áî¡£
2 ³õʼ»¯Êý¾Ý¶Î£ºÍ¨³£½«´Ë¶Î³ÆÎªÊý¾Ý¶Î£¬Ëü°üº¬Á˳ÌÐò ......