我的问题是,为什么这些表达式是假的?
Python 2.6.4 (r264:75706, Dec 7 2009, 18:45:15)
[GCC 4.4.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> num = raw_input("Choose a number: ")
Choose a number: 5
>>> print num
5
>>> print ( num < 18 )
False
>>> print ( num == 5 )
False
Run Code Online (Sandbox Code Playgroud)
因为如果我试试这个:
>>> print ( num > 0 )
True
Run Code Online (Sandbox Code Playgroud)
表达式很好.
我尝试在C和C++中打印出数组元素的内存地址.
在C:
char array[10];
int i;
for(i =0; i<10;i++){
printf(" %p \n", &array[i]);
}
Run Code Online (Sandbox Code Playgroud)
我有足够的内存地址:0xbfbe3312,0xbfbe3313,0xbfbe3314,....
但是,如果我尝试在C++中做同样的事情:
char array[10];
for(int i =0; i<10;i++){
std::cout<<&array[i]<<std::endl;
}
Run Code Online (Sandbox Code Playgroud)
我得到了这个输出:
P
ķ
它为什么不同?我应该cout在C++中使用不同的方式打印出内存地址吗?我该如何打印出内存地址?