c++/c±à³Ì×¢ÒâÊÂÏî
ÈÝÒ×´íÎóµÄʹÓÃÖ¸Õë:
void GetMemory(char *p, int num)
{
p = (char *)malloc(sizeof(char) * num);
}
void Test(void)
{
char *str = NULL;
GetMemory(str, 100); // str ÈÔȻΪ NULL
strcpy(str, "hello"); // ÔËÐдíÎó
}
벡³öÔÚº¯ÊýGetMemory ÖС£±àÒëÆ÷×ÜÊÇҪΪº¯ÊýµÄÿ¸ö²ÎÊýÖÆ×÷ÁÙʱ¸±±¾£¬Ö¸Õë
²ÎÊýp µÄ¸±±¾ÊÇ _p£¬±àÒëÆ÷ʹ _p = p¡£Èç¹ûº¯ÊýÌåÄڵijÌÐòÐÞ¸ÄÁË_p µÄÄÚÈÝ£¬¾Íµ¼ÖÂ
²ÎÊýp µÄÄÚÈÝ×÷ÏàÓ¦µÄÐ޸ġ£Õâ¾ÍÊÇÖ¸Õë¿ÉÒÔÓÃ×÷Êä³ö²ÎÊýµÄÔÒò¡£ÔÚ±¾ÀýÖУ¬_p ÉêÇë
ÁËеÄÄڴ棬ֻÊǰÑ_p ËùÖ¸µÄÄÚ´æµØÖ·¸Ä±äÁË£¬µ«ÊÇp Ë¿ºÁδ±ä¡£ËùÒÔº¯ÊýGetMemory
²¢²»ÄÜÊä³öÈκζ«Î÷¡£ÊÂʵÉÏ£¬Ã¿Ö´ÐÐÒ»´ÎGetMemory ¾Í»áй¶һ¿éÄڴ棬ÒòΪûÓÐÓÃ
free ÊÍ·ÅÄÚ´æ¡£
ΪʲôҪÓÐnewºÍdelete£¬ÓÃmallocºÍfree²»¹»Âð£¿
MallocÓëfreeÊǿ⺯Êý¶ø²»ÊDzÙ×÷ÔËËã·û£¬²»Äܱ»¹¹Ô캯ÊýÓëÎö¹¹º¯Êý×Ô¶¯µ÷ÓÃ
Èç¹ûÓÃfree ÊÍ·Å¡°new ´´½¨µÄ¶¯Ì¬¶ÔÏó¡±£¬ÄÇô¸Ã¶ÔÏóÒòÎÞ·¨Ö´ÐÐÎö¹¹º¯Êý¶ø¿ÉÄÜ
µ¼Ö³ÌÐò³ö´í¡£Èç¹ûÓÃdelete ÊÍ·Å¡°malloc ÉêÇëµÄ¶¯Ì¬Äڴ桱£¬ÀíÂÛÉϽ²³ÌÐò²»»á³ö´í£¬
µ«ÊǸóÌÐòµÄ¿É¶ÁÐԺܲËùÒÔnew/delete ±ØÐëÅä¶ÔʹÓã¬malloc/free Ò²Ò»Ñù¡£
void Function(int)Óëint Function (int)±àÒëÆ÷Çø·Ö²»³öÖØÔØº¯Êý£¬ÖØÔغ¯ÊýÖÁÉÙÔÚ²ÎÊý¸öÊý¡¢²ÎÊýÀàÐÍ»ò²ÎÊý˳ÐòÉÏÓÐËù²»Í¬¡£
¶ÔÓÚ·ÇÄÚ²¿Êý¾ÝÀàÐ͵ÄÊäÈë²ÎÊý£¬Ó¦¸Ã½«¡°Öµ´«µÝ¡±µÄ·½Ê½¸ÄΪ¡°const ÒýÓô«
µÝ¡±£¬Ä¿µÄÊÇÌá¸ßЧÂÊ¡£ÀýÈ罫void Func(A a) ¸ÄΪvoid Func(const A &a)¡£
¶ÔÓÚÄÚ²¿Êý¾ÝÀàÐ͵ÄÊäÈë²ÎÊý£¬²»Òª½«¡°Öµ´«µÝ¡±µÄ·½Ê½¸ÄΪ¡°const ÒýÓô«µÝ¡±¡£
·ñÔò¼È´ï²»µ½Ìá¸ßЧÂʵÄÄ¿µÄ£¬ÓÖ½µµÍÁ˺¯ÊýµÄ¿ÉÀí½âÐÔ¡£ÀýÈçvoid Func(int x) ²»
Ó¦¸Ã¸ÄΪvoid Func(const int &x)¡£
Èκβ»»áÐÞ¸ÄÊý¾Ý³ÉÔ±µÄº¯Êý¶¼Ó¦¸ÃÉùÃ÷Ϊconst ÀàÐÍ¡£Èç¹ûÔÚ±àдconst ³ÉÔ±º¯
Êýʱ£¬²»É÷ÐÞ¸ÄÁËÊý¾Ý³ÉÔ±£¬»òÕßµ÷ÓÃÁËÆäËü·Çconst ³ÉÔ±º¯Êý£¬±àÒëÆ÷½«Ö¸³ö´íÎó£¬
ÕâÎÞÒÉ»áÌá¸ß³ÌÐòµÄ½¡×³ÐÔ¡£
int GetCount(void) const; // const ³ÉÔ±º¯Êý
Ïà¹ØÎĵµ£º
¶¨Òå°´Öµ´«µÝºÍ°´ÒýÓô«µÝÕâÁ½¸öÊõÓïÊÇÖØÒªµÄ¡£
°´Öµ´«µÝÒâζ×ŵ±½«Ò»¸ö²ÎÊý´«µÝ¸øÒ»¸öº¯Êýʱ£¬º¯Êý½ÓÊÕµÄÊDzÎÊýµÄÒ»¸ö¸±±¾¡£Òò´Ë£¬Èç ¹ûº¯ÊýÐÞ¸ÄÁ˸òÎÊý£¬½ö¸Ä±ä¸±±¾£¬¶øÔʼֵ±£³Ö²»±ä¡£°´ÒýÓô«µÝÒâζ×ŵ±½«Ò»¸ö²ÎÊý´«µÝ¸øÒ»¸öº¯Êýʱ£¬º¯Êý½ÓÊÕµÄÊDzÎÊýµÄÄÚ´æµØÖ·£¬¶ø²»ÊDzÎÊýµÄ¸±±¾¡£Òò ´Ë£¬Èç¹ûº¯ÊýÐÞ¸ÄÁ˸òÎÊý£¬µ÷ ......
¼ì²é¿Õ¸ñ×Ö·û
#include <ctype.h>
int isspace ( int c );
http://www.cplusplus.com/reference/clibrary/cctype/isspace/
Checks if parameter c is a white-space character.For the purpose of this function, standard white-space characters are:
' '
(0x20)
space (SPC)
'\t'
(0x09)
horizontal tab ......
ÒýÑÔ
¡¡¡¡Ö¸ÕëÊÇC/C++ÓïÑÔµÄÌØÉ«£¬¶øÊý×éÃûÓëÖ¸ÕëÓÐÌ«¶àµÄÏàËÆ£¬ÉõÖÁºÜ¶àʱºò£¬Êý×éÃû¿ÉÒÔ×÷ΪָÕëʹÓá£ÓÚÊǺõ£¬ºÜ¶à³ÌÐòÉè¼ÆÕ߾ͱ»¸ãºýÍ¿ÁË¡£¶øÐí¶àµÄ´óѧÀÏʦ£¬ËûÃÇÔÚCÓïÑԵĽÌѧ¹ý³ÌÖÐÒ²´íÎóµÃ¸øÑ§Éú½²½â£º"Êý×éÃû¾ÍÊÇÖ¸Õë"¡£ºÜÐÒÔË£¬ÎҵĴóѧÀÏʦ¾ÍÊÇÆäÖÐÖ®Ò»¡£Ê±ÖÁ½ñÈÕ£¬ÎÒÈÕ¸´Ò»ÈյؽøÐÐ×ÅC/C++Ï ......
¸÷λ´ó¸ç£¬ÓÐÇå³þGPS½ÓÊÕÁéÃô¶ÈµÄÖ¸±ê£££ÔØÔë±ÈC/N, C/NoµÄÓкκ¬Ò壬Á½ÕßÓкÎÇø±ð£¬¿ÉÒÔÔÚÕâÀïÌÖÂÛһϡ£
C/No=10* Log(C/KTB)﹐²»°üÀ¨Ìì線µ½CorrelatorµÄPATH LOSS¼°LNAµÈ線·Òý進µÄÔëÒô﹔¶øC/N則°üÀ¨Ò»ÇÐÔëÒô¡£
CÊÇÖ¸ÐÅ號強¶È﹐KÊÇÖ¸²¨爾 ......
Ò»¡¢
ÏÈ¿´Ò»¸ö³ÌÐò
#include <stdio.h>
int main()
{
const int a = 5;
int b[a];
return 0;
}
ÔÚvc6.0ÖÐÃüÃûΪ.cÎļþ£¬±àÒë»á³ö´í£¬ÊÇint b[a]ÕâÒ»ÐУºexpected constant expression
ÃüÃûΪ.cppÎļþ£¬Ã»ÎÊÌâ¡£
ÔÚcodeblocks(Ò»¸öÃâ·Ñ¿ªÔ´µÄ±àÒëÆ÷)ÖбàÒ붼à ......