´ÓCµ½Perl
´ÓCµ½Perl
2008Äê11ÔÂ19ÈÕ ÐÇÆÚÈý 23:06
×÷ÕߣºÍõ´Ï <xiyou.wangcong@gmail.com>
ºÜ¶àÈ˲¢²»ÊǰÑPerlµ±×öµÚÒ»Ãűà³ÌÓïÑÔÀ´Ñ§Ï°µÄ£¬ÔÚѧPerl֮ǰÍùÍùÒÑ¾ÕÆÎÕÁË
Ò»Á½ÃÅÆäËüÓïÑÔ¡£ËäÈ»ÓÐÕùÒ飬µ«ÊÇÎÒ¸öÈËÈÏΪPerlȷʵ²»ÊʺÏ×÷ΪÈëÃÅÓïÑÔ¡£ÕâÆªÎÄÕ¾ÍÊÇд¸øÄÇЩÊìϤC¶øÇÒÓÖÏë
ÕÆÎÕPerlµÄ³ÌÐòÔ±£¬½éÉÜһЩ¼¼ÇÉÒÔ¼°ÈçºÎ±ÜÃâC³ÌÐòÔ±³£·¸µÄ´íÎ󣬴øÄã¶É¹ýΣÏÕµÄÕÓÔó¡£ÔÚ¶ÁÕâÆªÎÄÕÂ֮ǰ£¬
ÇëÏȲ鿴perltrapµÄÊÖ²áÒ³£¬ÀïÃæÓкܶàÓÐÓõÄÐÅÏ¢£¬ÕâÀï²»ÔÙÖØ¸´¡£»¶ÓÀ´µ½PerlµÄħ·¨ÊÀ½ç£¡
Èç¹ûÄãϲ»¶C£¬ÄÇÄãÒ²»á°®ÉÏPerl¡£
CÓïÑÔµÄÉè¼ÆÕßDennis Ritche˵£º“CÓïÑÔ¹îÒìÀëÆæ£¬È±ÏÝÖØÖØ£¬È´»ñµÃÁ˾޴óµÄ³É¹¦¡£
”Õâ´ó¸ÅÊÇÒòΪCµÄ³éÏó³Ì¶ÈÅöÇɼÈÂú×ãÁ˳ÌÐòÔ±µÄÒªÇó, ÓÖÈÝÒ×ʵÏÖ¡£ÖÓ°®CµÄÈ˶¼ÀÖÒâÐ´Ò»Ð©Ï¡Ææ¹Å¹ÖµÄC³ÌÐò£¬²¢ÒÔ´Ëչʾ
×Ô¼ºµÄ²ÅÄÜ¡£PerlÔÚÕâ·½Ãæ¸ü¿ÉνÊÇ“ÓйýÖ®¶øÎÞ²»¼°”¡£ Perl³óª¶øÓÖ³éÏó£¬ÍêÈ«¿ÉÒÔÓÃÀ´Ð´»ìÂÒ´úÂ룬µ«ËüÓÖÁé»îʵÓ㬶øÇÒ¸ü½Ó½ü×ÔÈ»ÓïÑÔ£¬Ò²¿ÉÒÔÓÃÀ´Ð´Ê«¡£
Õâ±¾Éí¾ÍºÜÓÐÒâ˼¡£ÔÚCÉó¤µÄµ×²ãÁìÓò£¬PerlÖ»ÄÜÍû³¾Äª¼°£¬±Ï¾¹ËüÌìÉú²»ÊÇÓÃÀ´ºÍÓ²¼þ´ò½»µÀµÄ¡£
µ«ÔÚÎı¾´¦ÀíÁìÓò£¬CÖ»ºÃ¸©Ê׳Ƴ¼ÁË£¬¶øPerlÔÚÕâ·½Ãæ·Ç³£Ç¿´ó¡£¾Ý˵£¬PerlÒ²µÃµ½Á˺ܶàÉúÎïѧ¼ÒµÄÇàíù£¬ Ôںܴó³Ì¶ÈÉϰïÖúÁËÈËÀà»ùÒò×鼯»®¡£Ð»Ð»Larry
Wall£¡
¸øC³ÌÐòÔ±µÄÌáʾ
Perl½áºÏÁ˶àÖÖ±à³ÌÓïÑÔµÄÌØÐÔ£¬CÓïÑÔÒ²ÔÚÆäÖС£PerlºÍCÓÐÒÔÏÂÏà֮ͬ´¦£º
1.·ÖºÅÊÇÿ¸ö¼òµ¥Óï¾ä±ØÐèµÄ£¬»»Ðв»ÄܱíʾÓï¾ä½áÊø¡£
2.Êý×éϱêÒ²ÊÇ´Ó0¿ªÊ¼£¬PerlÖÐÏñsubstrÕâÑùµÄ×Ö·û´®º¯ÊýÒ²ÊÇ´Ó0¿ªÊ¼¼ÆËãλÖõġ£
3.¶ººÅ²Ù×÷·ûµÄ×÷ÓÃÒ»Ñù¡£
4.&&ºÍ||²Ù×÷·û×÷ÓÃÒ»Ñù¡£
È»¶ø£¬PerlºÍC±Ï¾¹ÊÇÁ½ÖÖÍêÈ«²»Í¬µÄ±à³ÌÓïÑÔ£¬´ÓCתÏòPerlÓкܶàÖµµÃ×¢ÒâµÄµØ·½¡£ÎÒÃÇÔÚÏÂÃæÏêϸÌÖÂÛ¡£
1.±äÁ¿µÄÀàÐÍÓÉËüÇ°ÃæµÄ·ûºÅÈ·¶¨
Õâ²»ÊÇ˵PerlʹÓõÄÊÇÐÙÑÀÀû±íʾ·¨£¬¶øÊÇPerlµÄÌØÐÔ¡£ ÔÚPerlÖУ¬$˵Ã÷±äÁ¿ÊÇÒ»¸öscalar£¬@±íÃ÷±äÁ¿ÊÇÒ»¸öarray£¬
¶ø%˵Ã÷ºóÃæµÄ±äÁ¿ÊÇÒ»¸öhash¡£±ÈÈ磺@fooÊÇÒ»¸öÊý×飬¶ø$foo[0]ÊÇÊý×é@fooÖеÚÒ»¸öÔªËØ£¬@foo[0]ÊÇ
Ò»¸öÊý×鯬¶Î£¬µ±È»Ò²ÊÇÊý×飬µ«Õâ¸öƬ¶ÎÖ»ÓÐÒ»¸öÔªËØ$foo[0]¡£Èç¹ûÄãÊý×é±äÁ¿°Ñ¸³¸øÒ»¸ö±êÁ¿£¬±ÈÈ磺$bar=@foo;£¬
Ä㽫µÃµ½µÄÊǸÃÊý×éÖÐÔªËØµÄ¸öÊý¡£
2.û±ØÒªÌáǰÉùÃ÷Ò»¸ö±äÁ¿
 
Ïà¹ØÎĵµ£º
ÒòΪÏîĿҪÇó£¬ÖÆ×÷µÄÒ»¸ö¶àÎļþÉÏ´«£¬²¢ÏÔʾ½ø¶ÈÌõÒ»¶Î´úÂë(vs2005»·¾³)¡£
(ֻΪ´ÖÂÔµÄʵÏÖ£¬´úÂë²¢²»¹æ·¶)
µ±¶à¸öÎļþÉÏ´«µÄʱºò£¬ÐèÒªÒÀ´Î¶ÓÁÐÐÎʽһ¸ö¸öÉÏ´«£¬µ±ÉÏ´«Ä³¸öÎļþµÄʱºò£¬Ëø¶¨½ø³Ì£¬ÉÏ´«Íê±ÏÔÙ¿ªÆôËø¡£
ÔÚÖ÷ÀàÖеÄÉÏ´«°´Å¥Ê¼þ´úÂë:
//
»ñÈ¡openFileDialog¿Ø¼þÑ¡ÔñµÄÎļþÃûÊý×é(openFileDialog¿É ......
#include <iostream>
#include <cstdlib>
using namespace std;
class Foo
{
public:
Foo(int ii):i(ii){}
int getInt(){return i;}
private:
int i;
};
class Bar
{
public:
static int FooVal(){c++; return f.getInt();}
int callsFooVal(){return c;}
private:
s ......
¡¡I2C×ÜÏß¾ßÓнṹ¼òµ¥Ê¹Ó÷½±ãµÄÌØµã¡£±¾ÎÄÃèÊöÁËlinuxÏÂI2CÇý¶¯µÄ½á¹¹£¬²¢ÔÚ´Ë»ù´¡Éϸø³öÁËI2CÉ豸Çý¶¯ºÍÓ¦ÓõÄʵÏÖ¡£
¡¡¡¡1 ÒýÑÔ
¡¡¡¡I2C (Inter£Integrated Circuit)×ÜÏßÊÇÒ»ÖÖÓÉPHILIPS¹«Ë¾¿ª·¢µÄÁ½Ïßʽ´®ÐÐ×ÜÏߣ¬ÓÃÓÚÁ¬½Ó΢¿ØÖÆÆ÷¼°ÆäÍâΧÉ豸¡£I2C×ÜÏß×îÖ÷ÒªµÄÓŵãÊÇÆä¼òµ¥ÐÔºÍÓÐЧÐÔ¡£ÓÉÓÚ½Ó¿ÚÖ±½ÓÔÚ×é¼þÖ ......
×î½üÔÚ¿´Linux 2.6.21Äں˵ÄI2CÇý¶¯£¬Ò²ÔÚÍøÉϲéÁËÒ»ÏÂ×ÊÁÏ£¬ÓдíÒ²Óжԣ¬ÓÐЩÐĵ㬼ǼÏÂÀ´°É¡£ÀïÃæÈÏʶ»òÐí¶àÓв»µ±Ö®´¦£¬»¹¿ÒÇëÖ¸Õý¡£
1. I2C ÐÒé
1.1 I2C×ÜÏß¹¤×÷ÔÀí
I2C×ÜÏßÊÇÓÉÊý¾ÝÏßSDAºÍʱÖÓSCL¹¹³ÉµÄ´®ÐÐ×ÜÏߣ¬¸÷ÖÖ±»¿ØÖÆÆ÷¼þ¾ù²¢ÁªÔÚÕâÌõ×ÜÏ ......