int foo = 11;
int *p = &foo;
auto pp = p;
auto *ppp = p;
cout << pp << endl;
cout << ppp << endl;
Run Code Online (Sandbox Code Playgroud)
这个程序会为pp和产生相同的输出ppp,但为什么呢?auto推断变量应该是int,所以我认为声明ppp是对的.但是pp并且ppp具有相同的价值......
输出:
0x61fefc
0x61fefc
Run Code Online (Sandbox Code Playgroud) dict_mark = {'Wang': 'C', 'Li': 'B', 'Ma': 'A'}
s = ''
for c in dict_mark.values():
s += c
print(s)
Run Code Online (Sandbox Code Playgroud)
字典是无序的,那么为什么dict_mark.values()总是返回这个值序列呢'C' 'B' 'A'?
为什么不'B' 'A' 'C'或者'A' 'B' 'C'?
例如,局部变量有一种图标,函数有另一种图标。如何查看这些图标代表的所有含义?
char * ss = "abscd";
string * b = (string *) ss;
std::cout << ss << std::endl;
std::cout << *b << std::endl;
Run Code Online (Sandbox Code Playgroud)
输出是:
abscd
//empty line
Run Code Online (Sandbox Code Playgroud)
我以为会是:
abscd
abscd
Run Code Online (Sandbox Code Playgroud)