¹ØÓÚ Ö¸Õë CµÄ¾«Ëè
ÒªÁ˽âÖ¸Õë,¶à¶àÉÙÉÙ»á³öÏÖһЩ±È½Ï¸´ÔÓµÄÀàÐÍ,ËùÒÔÎÒÏȽéÉÜ
Ò»ÏÂÈçºÎÍêÈ«Àí½âÒ»¸ö¸´ÔÓÀàÐÍ,ÒªÀí½â¸´ÔÓÀàÐÍÆäʵºÜ¼òµ¥,Ò»
¸öÀàÐÍÀï»á³öÏֺܶàÔËËã·û,ËûÃÇÒ²ÏñÆÕͨµÄ±í´ïʽһÑù,ÓÐÓÅÏÈ
¼¶,ÆäÓÅÏȼ¶ºÍÔËËãÓÅÏȼ¶Ò»Ñù,ËùÒÔÎÒ×ܽáÁËÒ»ÏÂÆäÔÔò:
´Ó±äÁ¿Ãû´¦Æð,¸ù¾ÝÔËËã·ûÓÅÏȼ¶½áºÏ,Ò»²½Ò»²½·ÖÎö.
ÏÂÃæÈÃÎÒÃÇÏÈ´Ó¼òµ¥µÄÀàÐÍ¿ªÊ¼ÂýÂý·ÖÎö°É:
int p; //ÕâÊÇÒ»¸öÆÕͨµÄÕûÐͱäÁ¿
int *p; //Ê×ÏÈ´ÓP´¦¿ªÊ¼,ÏÈÓë*½áºÏ,ËùÒÔ˵Ã÷PÊÇÒ»
//¸öÖ¸Õë,È»ºóÔÙÓëint½áºÏ,˵Ã÷Ö¸ÕëËùÖ¸Ïò
//µÄÄÚÈݵÄÀàÐÍΪintÐÍ.ËùÒÔPÊÇÒ»¸ö·µ»ØÕû
//ÐÍÊý¾ÝµÄÖ¸Õë
int p[3]; //Ê×ÏÈ´ÓP´¦¿ªÊ¼,ÏÈÓë[]½áºÏ,˵Ã÷PÊÇÒ»¸öÊý
//×é,È»ºóÓëint½áºÏ,˵Ã÷Êý×éÀïµÄÔªËØÊÇÕû
//Ð͵Ä,ËùÒÔPÊÇÒ»¸öÓÉÕûÐÍÊý¾Ý×é³ÉµÄÊý×é
int *p[3]; //Ê×ÏÈ´ÓP´¦¿ªÊ¼,ÏÈÓë[]½áºÏ,ÒòΪÆäÓÅÏȼ¶
//±È*¸ß,ËùÒÔPÊÇÒ»¸öÊý×é,È»ºóÔÙÓë*½áºÏ,˵Ã÷
//Êý×éÀïµÄÔªËØÊÇÖ¸ÕëÀàÐÍ,È»ºóÔÙÓëint½áºÏ,
//˵Ã÷Ö¸ÕëËùÖ¸ÏòµÄÄÚÈݵÄÀàÐÍÊÇÕûÐ͵Ä,ËùÒÔ
//PÊÇÒ»¸öÓÉ·µ»ØÕûÐÍÊý¾ÝµÄÖ¸ÕëËù×é³ÉµÄÊý×é
int (*p)[3]; //Ê×ÏÈ´ÓP´¦¿ªÊ¼,ÏÈÓë*½áºÏ,˵Ã÷PÊÇÒ»¸öÖ¸Õë
//È»ºóÔÙÓë[]½áºÏ(Óë"()"Õâ²½¿ÉÒÔºöÂÔ,Ö»ÊÇΪ
//Á˸ıäÓÅÏȼ¶),˵Ã÷Ö¸ÕëËùÖ¸ÏòµÄÄÚÈÝÊÇÒ»¸ö
//Êý×é,È»ºóÔÙÓëint½áºÏ,˵Ã÷Êý×éÀïµÄÔªËØÊÇ
//ÕûÐ͵Ä.ËùÒÔPÊÇÒ»¸öÖ¸ÏòÓÉÕûÐÍÊý¾Ý×é³ÉµÄÊý
//×éµÄÖ¸Õë
int **p; //Ê×ÏÈ´ÓP¿ªÊ¼,ÏÈÓë*½áºÏ,˵ÊÇPÊÇÒ»¸öÖ¸Õë,È»
//ºóÔÙÓë*½áºÏ,˵Ã÷Ö¸ÕëËùÖ¸ÏòµÄÔªËØÊÇÖ¸Õë,È»
//ºóÔÙÓëint½áºÏ,˵Ã÷¸ÃÖ¸ÕëËùÖ¸ÏòµÄÔªËØÊÇÕû
//ÐÍÊý¾Ý.ÓÉÓÚ¶þ¼¶Ö¸ÕëÒÔ¼°¸ü¸ß¼¶µÄÖ¸Õ뼫ÉÙÓÃ
//ÔÚ¸´ÔÓµÄÀàÐÍÖÐ,ËùÒÔºóÃæ¸ü¸´ÔÓµÄÀàÐÍÎÒÃǾÍ
//²»¿¼ÂǶ༶ָÕëÁË,×î¶àÖ»¿¼ÂÇÒ»¼¶Ö¸Õë.
Ïà¹ØÎĵµ£º
CÊÇÃæÏò¹ý³ÌµÄ³ÌÐòÉè¼Æ£¬³ÌÐò=Êý¾Ý½á¹¹+Ëã·¨ [×îÔʼ£¬µ«±à¸ö³Ìȷʵ²»Ò×]
C++ÊÇÃæÏò¶ÔÏóµÄ³ÌÐòÉè¼Æ£¬³ÌÐò=¶à¸öÀà+ÏûÏ¢(Àà=Êý¾Ý½á+Ëã·¨)[±È½ÏÈÝÒ×ÉÏÊÖ]
C# ÊÇ´¿ÃæÏò¶ÔÏóµÄÓïÑÔ[¸ü¼Ó±È½ÏÈÝÒ×ÉÏÊÖ]
VC/VC++/VC# Ö»ÊÇÓÃÀ´¿ª·¢C/C++/C#Ó¦ÓóÌÐòµÄÈí¼þÖеÄÒ»ÖÖ¡£
......
¶þ·Ö²éÕҵĴúÂë.
int bfind(int* a,int len,int val)
{
int m = len/2;
int l = 0;
int r = len;
while(l!=m && r!= m)
{
if(a[m] > val)
& ......
²Ù×÷ϵͳµÄÒ»¸ö¾µäÎÊÌâÊÇ"Éú²úÕß-Ïû·ÑÕß"ÎÊÌâ, ÕâÉ漰ͬ²½ÐźÅÁ¿ºÍ»¥³âÐźÅÁ¿µÄÓ¦ÓÃ, ÔÚÕâÀï,ÎÒÓÃÏ̵߳Äͬ²½ºÍ»¥³âÀ´ÊµÏÖ.
/*
* author ÕÅÎÄ
* 2008/06/20
*/
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <pthread.h>
#include <semaphore.h> ......
²Ù×÷ϵͳµÄÒ»¸ö¾µäÎÊÌâÊÇ"Éú²úÕß-Ïû·ÑÕß"ÎÊÌâ, ÕâÉ漰ͬ²½ÐźÅÁ¿ºÍ»¥³âÐźÅÁ¿µÄÓ¦ÓÃ, ÔÚÕâÀï,ÎÒÓÃÏ̵߳Äͬ²½ºÍ»¥³âÀ´ÊµÏÖ.
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <pthread.h>
#include <semaphore.h>
#define N 2 // Ïû·ÑÕß» ......
C³ÌÐòÖоßÓзḻµÄÊý¾ÝÀàÐÍ£¬°üÀ¨ÉùÃ÷ÖÐÏÔʽ¶¨ÒåµÄÀàÐͺÍÓÃ×ö±í´ïʽÖмäÀàÐ͵ĵ¼³öÀàÐÍ¡£ÀýÈ磬ÏÂÃæµÄ¸³ÖµÓï¾ä°üº¬3 ÖÖ²»Í¬ÀàÐÍ:
int *p, x;
*p = x;
xÊÇÒ»¸ö´æ·ÅÕûÊýµÄµ¥ÔªµÄµØÖ·£¬Òò´ËxµÄµØÖ·µÄÀàÐÍÊÇ£ºÖ¸ÏòÒ»¸öÕûÊýµÄÖ¸Õë¡£xµÄÖµµÄÀàÐÍÊÇÕûÐÍ¡£Í¬Ñù, pµÄ×óÖµµÄÀàÐÍÊÇÖ¸ÏòÒ»¸öÕ ......