字符指针值为空,为什么代码不打印5?

时间:2018-03-25 18:11:59

标签: c++ pointers

$

第9行未由编译器执行

2 个答案:

答案 0 :(得分:4)

std::ostream的{​​{1}}有an overload for char*,这会取消引用您传递给它的指针。

这意味着您尝试取消引用指向operator<<的指针,从而导致未定义的行为。在这种情况下,您的下一个打印不会显示。

如果您想显示地址,请明确地转换为0

void*

答案 1 :(得分:0)

You have assigned a char pointer variable x = 0 which is null and trying to dereference a null pointer which resulted in a undefined behaviour. Pointer variables should store only address of another variable