使用 cout 打印 size_t 给出了不可思议的输出
Printing size_t using cout gives uncanny output
我正在尝试使用 cout 打印 size_t 值。这是我的代码
#include <iostream>
using namespace std;
int main() {
size_t blah = 15;
cout << blah +" gibberish";
return 0;
}
我得到的输出是这样的:D
.
感谢您的帮助! :)
*我正在尝试使用 this 打印内存使用情况。
*另外,size_t的单位是什么?
*我尝试发布 cout<<blah +" bytes";
,它给我一个电话 Unicode 表情符号(U+0007 : BELL [BEL])作为输出,但 Whosebug 拒绝显示它。
blah +" bytes"
正在给一个指针(由char
的数组转换而来)添加一个整数,所以指针被移到了无效的地方。
你应该做
#include <iostream>
using namespace std;
int main() {
size_t blah = 15;
cout << blah << " bytes";
return 0;
}
相反。 (使用 <<
而不是 +
:打印数字和字符串 one-by-one 而不是尝试事先连接它们)
我正在尝试使用 cout 打印 size_t 值。这是我的代码
#include <iostream>
using namespace std;
int main() {
size_t blah = 15;
cout << blah +" gibberish";
return 0;
}
我得到的输出是这样的:D
.
感谢您的帮助! :)
*我正在尝试使用 this 打印内存使用情况。
*另外,size_t的单位是什么?
*我尝试发布 cout<<blah +" bytes";
,它给我一个电话 Unicode 表情符号(U+0007 : BELL [BEL])作为输出,但 Whosebug 拒绝显示它。
blah +" bytes"
正在给一个指针(由char
的数组转换而来)添加一个整数,所以指针被移到了无效的地方。
你应该做
#include <iostream>
using namespace std;
int main() {
size_t blah = 15;
cout << blah << " bytes";
return 0;
}
相反。 (使用 <<
而不是 +
:打印数字和字符串 one-by-one 而不是尝试事先连接它们)