C/C++ ³ÌÐòÉè¼ÆÔ±Ó¦Æ¸³£¼ûÃæÊÔÊÔÌâÉîÈëÆÊÎöÖ®Èý
ÊÔÌâ5£º±àдһ¸öº¯Êý£¬×÷ÓÃÊǰÑÒ»¸öchar×é³ÉµÄ×Ö·û´®Ñ»·ÓÒÒÆn¸ö¡£±ÈÈçÔÀ´ÊÇ“abcdefghi”Èç¹ûn=2£¬ÒÆÎ»ºóÓ¦¸ÃÊÇ“hiabcdefgh”
¡¡¡¡º¯ÊýÍ·ÊÇÕâÑùµÄ£º
//pStrÊÇÖ¸ÏòÒÔ'\0'½áβµÄ×Ö·û´®µÄÖ¸Õë
//stepsÊÇÒªÇóÒÆ¶¯µÄn
void LoopMove ( char * pStr, int steps )
{
¡¡//ÇëÌî³ä...
}
¡¡¡¡½â´ð£º
¡¡¡¡ÕýÈ·½â´ð1£º
void LoopMove ( char *pStr, int steps )
{
¡¡int n = strlen( pStr ) - steps;
¡¡char tmp[MAX_LEN];
¡¡strcpy ( tmp, pStr + n );
¡¡strcpy ( tmp + steps, pStr);
¡¡*( tmp + strlen ( pStr ) ) = '\0';
¡¡strcpy( pStr, tmp );
}
¡¡¡¡ÕýÈ·½â´ð2£º
void LoopMove ( char *pStr, int steps )
{
¡¡int n = strlen( pStr ) - steps;
¡¡char tmp[MAX_LEN];
¡¡memcpy( tmp, pStr + n, steps );
¡¡memcpy(pStr + steps, pStr, n );
¡¡memcpy(pStr, tmp, steps );
}
¡¡¡¡ÆÊÎö£º
¡¡¡¡Õâ¸öÊÔÌâÖ÷Òª¿¼²éÃæÊÔÕß¶Ô±ê×¼¿âº¯ÊýµÄÊìÁ·³Ì¶È£¬ÔÚÐèÒªµÄʱºòÒýÓÿ⺯Êý¿ÉÒԺܴó³Ì¶ÈÉϼò»¯³ÌÐò±àдµÄ¹¤×÷Á¿¡£
¡¡¡¡×îÆµ·±±»Ê¹ÓõĿ⺯Êý°üÀ¨£º
¡¡¡¡£¨1£© strcpy
¡¡¡¡£¨2£© memcpy
¡¡¡¡£¨3£© memset
¡¡¡¡ÊÔÌâ6£ºÒÑÖªWAVÎļþ¸ñʽÈçÏÂ±í£¬´ò¿ªÒ»¸öWAVÎļþ£¬ÒÔÊʵ±µÄÊý¾Ý½á¹¹×éÖ¯WAVÎļþÍ·²¢½âÎöWAV¸ñʽµÄ¸÷ÏîÐÅÏ¢¡£
¡¡¡¡WAVEÎļþ¸ñʽ˵Ã÷±í
Æ«ÒÆµØÖ·×Ö½ÚÊýÊý¾ÝÀàÐÍÄÚ ÈÝÎļþÍ·
00H4 Char"RIFF"±êÖ¾04H4int32Îļþ³¤¶È08H4Char"WAVE"±êÖ¾0CH4Char"fmt"±êÖ¾10H4¹ý¶É×Ö½Ú£¨²»¶¨£©14H2int16¸ñʽÀà±ð16H2int16ͨµÀÊý18H2int16 ²ÉÑùÂÊ£¨Ã¿ÃëÑù±¾Êý£©£¬±íʾÿ¸öͨµÀµÄ²¥·ÅËÙ¶È1CH4int32²¨ÐÎÒôƵÊý¾Ý´«ËÍËÙÂÊ20H2int16Êý¾Ý¿éµÄµ÷ÕûÊý£¨°´×Ö½ÚËãµÄ£©22H2ÿÑù±¾µÄÊý¾ÝλÊý24H4CharÊý¾Ý±ê¼Ç·û£¢data£¢28H4int32ÓïÒôÊý¾ÝµÄ³¤¶È
¡¡¡¡½â´ð£º
¡¡¡¡½«WAVÎļþ¸ñʽ¶¨ÒåΪ½á¹¹ÌåWAVEFORMAT£º
typedef struct tagWaveFormat
{
¡¡char cRiffFlag[4];
¡¡UIN32 nFileLen;
¡¡char cWaveFlag[4];
¡¡char cFmtFlag[4];
¡¡char cTransition[4];
¡¡UIN16 nFormatTag ;
¡¡UIN16 nChannels;
¡¡UIN16 nSamplesPerSec;
¡¡UIN32 nAvgBytesperSec;
¡¡UIN16 nBlockAlign;
¡¡UIN16 nBitNumPerSample;
¡¡char cDataFlag[4];
¡¡UIN16 nAudioLength;
} WAVEFORMAT;
¡¡¡¡
Ïà¹ØÎĵµ£º
http://www.trendcaller.com/2009/05/hadoop-should-target-cllvm-not-java.html
Sunday, May 10, 2009
Hadoop should target C++/LLVM, not Java (because of watts)
< type="text/javascript">
digg_url="http://www.trendcaller.com/2009/05/hadoop-should-target-cllvm-not-java.html";
Over the years, ......
¡¡ÔÚC++ºÍJavaÖж¼´æÔÚÀàÒýÓã¬C++ÖÐÊÇÒªÃ÷È·Ö¸³öµÄ£¬ÏÔÐÔµÄ;¶øJavaÖÐÊÇÒþÐεġ£
¡¡¡¡ÔÚC++ÖУ¬"T &b=a;" ˵Ã÷bÊÇaµÄÒýÓã¬Á½ÕßÊÇͬÃû£¬Ö¸µÄͬһ¸ö¶«Î÷¡£¶ø·ÇÖ¸ÕëµÄÀàÉùÃ÷£¬¾Íͬʱ´´½¨ÁËÒ»¸öÀ࣬Èç"T a;"ʵ¼ÊÉÏaÒѾʵÀý»¯ÁË¡£¶øÉùÃ÷ÀàÒýÓÃʱ²»ÐèÒª´´½¨Ð¶ÔÏ󣬶øÊÇÖ±½ÓÖ¸ÏòÔÀ´µÄ¶ÔÏó¡£
¡¡¡¡ÀàÒýÓÃÔÚº¯ÊýµÄÐβκͷ ......
µÚ8ÕÂ:ÔÙÂÛÊý×é
1.ʲôʱºòÊý×éºÍÖ¸ÕëÊÇÏàͬµÄ
CÓïÑÔ±ê×¢¶Ô´Ë×÷ÁËÈçÏÂ˵Ã÷:
¹æÔò1: ±í´ïʽÖеÄÊý×éÃû(ÓëÉùÃ÷²»Í¬)±»±àÒëÆ÷µ±×÷Ò»¸öÖ¸Ïò¸ÃÊý×éµÚÒ»¸öÔªËØµÄÖ¸Õë.
int a[10], *p, i=2;
¿ÉÒÔͨ¹ýÒÔÏÂÈκÎÒ»ÖÖ·½·¨·ÃÎÊa[i];
p = a; p[i];
p = a; *(p+a);
p = a + i; *p
ÔÚ±í´ïʽÖÐ,Ö¸ÕëºÍÊý×éÊÇ¿ÉÒÔ»¥»»µÄ,ÒòΪËüÃÇÔÚ± ......
1£© -/+£º Õâ¸ö³Æ×öscope, Èç¹ûÔÚº¯ÊýÇ°ÃæÊÇ- £¬ÄÇôÀí½âΪһ°ãµÄº¯Êý£»Èç¹ûÊÇ+£¬ ¿ÉÒÔÀí½âΪc++ÖеÄstaticº¯Êý
2£© º¯ÊýµÄ²ÎÊýÉùÃ÷£º
Èç¹ûûÓвÎÊýµÄ»°£¬ÔÚº¯ÊýÃûºóÃæ£¬¿ÉÒÔʲô¶¼²»Ð´£»
Èç¹ûÖ»ÓÐÒ»¸ö²ÎÊý£¬ÔÚ : ºóÃæÉùÃ÷²ÎÊýµÄÀàÐͺÍÃû³Æ£»
Èç¹ûÓжà¸ö²ÎÊýµÄ»°£¬Ã¿¸ö²ÎÊýÇ°Ãæ¶¼ÒªÓÐÒ»¸ö : £¬ È»ºó½Ó×ÅÊDzÎÊýÀàÐͺͲΠ......