好的,目前我正在为简历编写内核。在编写我的内存管理单元时,我碰到了一堵砖墙。
int address = (int)malloc(sizeof(Test))
consoleWriteString("Variable Address:\n");
consoleWriteInteger(address);
char* f = (void*)address;
consoleWriteString("\nVariable Address:\n");
consoleWriteInteger((int)&f); // Should print off the same as above
从逻辑上讲,两者的输出应该相同。不过有些地方出了问题。因为我的输出如下。
Variable Address: 47167
Variable Address: 1065908
经过长时间的测试和调试,我终于屈服了,决定问堆栈溢出问题。此外,如果您发现任何语法错误,请忽略它们。顺便说一句,这一切都在 C 中,所有函数都是自定义的,包括 malloc,但我已经确定错误不在于该函数或任何其他事实。我相信这只是我对指针和施法的愚蠢,但是当我错过了一些超级简单的事情时不要嘲笑我。
谢谢你们