Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何在不在堆栈上创建任何内容的情况下打印数组的内容?_C++_C_Programming Languages - Fatal编程技术网

C++ 如何在不在堆栈上创建任何内容的情况下打印数组的内容?

C++ 如何在不在堆栈上创建任何内容的情况下打印数组的内容?,c++,c,programming-languages,C++,C,Programming Languages,我在一次采访中被问到这个问题。我不知道该告诉他什么。我问他解决办法是什么,但他拒绝回答。我在谷歌上搜索了一下,却找不到。谢谢你的帮助 我相信,这个问题更多的是为了检查您对内部程序工作(堆栈使用、分配/解除分配等)的理解。让我们考虑一下你的问题: 如何打印数组的内容而不在 堆叠 那到底是什么意思?打印后程序堆栈是否应处于相同的状态?在这种情况下,只需使用一个函数来打印堆栈内容,它就会将堆栈返回到相同的状态。如果你的面试官的意思是,不应该在堆栈上完全改变,这是非常困难的,在许多平台上可能不可能。此要

我在一次采访中被问到这个问题。我不知道该告诉他什么。我问他解决办法是什么,但他拒绝回答。我在谷歌上搜索了一下,却找不到。谢谢你的帮助

我相信,这个问题更多的是为了检查您对内部程序工作(堆栈使用、分配/解除分配等)的理解。让我们考虑一下你的问题:

如何打印数组的内容而不在 堆叠


那到底是什么意思?打印后程序堆栈是否应处于相同的状态?在这种情况下,只需使用一个函数来打印堆栈内容,它就会将堆栈返回到相同的状态。如果你的面试官的意思是,不应该在堆栈上完全改变,这是非常困难的,在许多平台上可能不可能。此要求意味着您不能使用标准C/C++库中的任何打印函数,因为任何调用都会改变堆栈。您可以创建工作代码,只使用procesor寄存器直接写入视频缓冲区,不会影响某些旧操作系统(例如MS DOS)中的堆栈内存。任何现代操作系统都会阻止这种情况,并且需要一些API调用,这将使最初的要求变得非常不可能。

选项1:面试官是个白痴

选项2:这个问题是对性格的测试


我总是喜欢问一个“不可能”的问题,看看受访者是否会尝试B.S.me,或者他们是否会承认自己不知道,如果需要,他们会试图找到答案并寻求帮助。这个问题很不清楚。有可能面试官不称职。你应该问“你这是什么意思”,而不是问答案。如果这是一个真正的问题,那就没有办法知道他们的意思,这才是真正的问题。