C/C++ ÃæÊÔÌâ
µÚÒ»Ì⣺
ÏÂÃæ³ÌÐòµÄÊä³ö½á¹û£¿
#include <stdio.h>
#include <iostream>
void main()
{
char str1[] = "";
char str2[] = "";
const char str3[] = "abc";
const char str4[] = "abc";
const char* str5 = "abc";
const char* str6 = "abc";
char* str7="abc";
char* str8="abc";
std::cout << std::boolalpha << ( str1==str2 ) << std::endl; // Êä³öʲô£¿
std::cout << std::boolalpha << ( str3==str4 ) << std::endl; // Êä³öʲô£¿
std::cout << std::boolalpha << ( str5==str6 ) << std::endl; // Êä³öʲô£¿
std::cout << std::boolalpha << ( str7==str8 ) << std::endl; // Êä³öʲô£¿
int i;
scanf("%d",&i);
}
½á¹û:false,false,true,true. ÒòΪǰÁ½¸öµÄÄÚ´æÊÇÔÚheapÉÏ·ÖÅäµÄ£¬µ±È»ÊDz»Í¬µÄµØÖ·£»¶øºóÁ½¸öÊÇÔÚ¾²Ì¬Çø·ÖÅäµÄ£¬ºóÃæµÄÏȼì²éÇ°ÃæÓÐÎÞ¸Ã×Ö·û´®£¬Óеϰ£¬¾Í²»ÔÙ·ÖÅ䣬ËùÒÔstr5,str6,str7,str8µØÖ·¶¼ÊÇÏàͬµÄ¡£
µÚ¶þÌâ:
1.¼ì²éÏÂÃæ³ÌÐòÊÇ·ñÓдíÎó²¢Ð´³öÔËÐнá¹û
(1).
void GetMemory(char *p)
{
p = (char *)malloc(100);
}
void Test(void)
{
char *str = NULL;
GetMemory(str);
strcpy(str, "hello world");
printf(str);
}
(2).
char *GetMemory(void)
{
char p[] = "hello world";
return p;
}
void Test(void)
{
char *str = NULL;
str = GetMemory();
printf(str);
}
(3).
void GetMemory2(char **p, int num)
{
*p = (char *)malloc(num);
}
void Test(void)
{
char *str = NULL;
GetMemory2(&str, 100);
strcpy(str, "hello");
printf(str);
}
½á¹û:(1)³ÌÐò±ÀÀ£¡£ÒòΪstr²¢Î´±»¸³Öµ£¬ÈÔÈ»ÊÇ0;
(2)¿ÉÄÜÊÇÂÒÂë¡£ÒòΪ"hello world"¹ýÁËÉúÃüÆÚ£¬²»ÔÚÄÚ´æÁË
Ïà¹ØÎĵµ£º
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, ......
//1.JavaÖÐ×Ö·û´®²»ÄܶàÐÐÊéд¡£¶àÐÐÊéдÓÃÒýºÅ¸ô¶Ï£¬¼ÓºÅÏàÁ¬¡£
//2.JavaµÄ±êʶ·û¿ÉÒÔÓÃÃÀÔª·ûºÅ¿ªÍ·¡£
//3.JavaÖÐûÓÐÎÞ·ûºÅ±äÁ¿»òÎÞ·ûºÅ³£Á¿µÄ¸ÅÄî¡£ËùÓеıäÁ¿¶¼ÊÇÓзûºÅµÄ¡£
//4.JavaÖбäÁ¿µÄ×Ö³¤Êǹ̶¨µÄ¡£²»´æÔÚcharºÍwcharÖ®·Ö¡£
//5.JavaÖбäÁ¿Î ......
static
DataManager
*
sharedDataManager
=
nil;
+
(DataManager
*
) sharedManager
{
@synchronized(self)
{
if
(sharedDataManager
==
nil)
&nb ......
½áÂÛ£º
char cmd[128];
...
int status = system(cmd);
printf("%d == system(\"%s\");\n", WEXITSTATUS(status), cmd); //´òÓ¡·µ»ØÖµ
ÍøÉÏËѵ½µÄ´ð°¸Óë½âÊÍ(1)£º
http://www.lslnet.com/linux/dosc1/38/linux-280268.htm
ÈçºÎÔÚunix c³ÌÐòÖеõ½systemµ÷Óõķµ»ØÖµ,ÇëÖ¸½Ì
¶Ô system µÄ·µ»ØÖµ ......