Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
被调用的函数在被调用后如何返回给调用者?
我读到 当程序进行函数调用时 被调用的函数必须知道如何返回其调用者 我的问题是 被调用的函数如何知道如何返回其调用者 是否有一种机制通过编译器在幕后工作 编译器遵循特定的 调用约定 该约定定义为您所针对的 ABI 的一部分 该调用约定将包括
c
compilerconstruction
ABI
functioncall
stackframe
C 中的可移植函数(无汇编)返回其堆栈帧的大小
用 C 编写一个可移植函数 无需汇编 返回其堆栈帧的大小 int stackframe size 尝试如下解决 该函数在使用 VS 2010 编译时返回 228 字节 有没有办法验证其正确性 int stackframe size int
c
Embedded
stackframe
评估树遍历递归算法中是否可能出现堆栈溢出错误 (Java)
从理论上 即不实际执行 确定某种树遍历递归算法将在 Java 中产生堆栈溢出的情况的最佳方法是什么 为了澄清我的问题 请考虑以下示例 给定一个用 Java 实现的简单二叉树 public class Node private int val
Java
recursion
stackoverflow
stackframe
编译器如何为 C++ 中条件声明的自动变量分配内存?
假设我有一个函数 根据某些运行时条件创建昂贵的自动对象或创建便宜的自动对象 void foo if runtimeCondition int x 0 else SuperLargeObject y 当编译器为此函数分配堆栈帧的内存时 它是否
c
memory
stackframe
如何获取 iOS 中任意线程的正确帧指针?
获取帧指针的方法 在 iPhone 5s 设备 Xcode 7 上运行的演示应用程序上 我尝试获取frame pointer of an 随意的线程使用thread get state http web mit edu darwin src
ios
c
stacktrace
callstack
stackframe
异常调用堆栈被截断,没有任何重新抛出
我有一个不寻常的情况 我有一个非常简单的异常被抛出并在同一方法中捕获 它不会被重新抛出 天真的程序员通常会遇到这样的问题 然而它的 StackFrame 只包含一个当前方法 它看起来是这样的 at my class MyMethod in
c
NET
Exception
stacktrace
stackframe
-fomit-frame-pointer *总是*省略 fp 吗?
是否 fomit frame pointeralways省略帧指针 是否存在pc和fp都需要设置的情况 动态堆栈增长是否会强制设置 fp 专门询问MIPS32 谢谢 正确执行并不真正需要帧指针 除非有时异常展开 动态堆栈增长通常需要某种帧指
c
gcc
stackframe
mips32
如何强制更新不同堆栈帧的 Python locals() 字典?
在Python 2 不确定3 中 locals 字典仅在您实际调用 locals 时才会更新 所以例如 l locals x 2 l x 失败是因为l里面没有键 x 但是 l locals x 2 locals l x 返回 2 我正在寻找
python
pythoninternals
inspect
stackframe
locals
用于 Web 应用程序的 GetEntryAssembly
Assembly GetEntryAssembly 不适用于网络应用程序 但是 我真的需要这样的东西 我使用一些在 Web 和非 Web 应用程序中使用的深度嵌套代码 我当前的解决方案是浏览 StackTrace 以查找第一个调用的程序集
c
Reflection
assemblies
codegeneration
stackframe
大多数现代系统中堆栈增长的方向是什么?
我正在准备一些 C 语言培训材料 我希望我的示例适合典型的堆栈模型 Linux Windows Mac OSX PPC 和 x86 Solaris 和最新的 Unix 中的 C 堆栈朝什么方向发展 堆栈增长通常并不取决于操作系统本身 而是取
Assembly
stack
callstack
ABI
stackframe
使用运行时库的 Delphi 64 位调试有错误的堆栈帧处于活动状态
我遇到了 Win64 调试问题 看起来我们 缺少 调试信息 所以我做了一些research https stackoverflow com questions 8793683 delphi app has no debug info whe
Delphi
debugging
watch
win64
stackframe
Smalltalk 如何操作调用堆栈帧(thisContext)?
Smalltalk 对象thisContext看起来奇怪又奇妙 我不明白它是什么以及它是如何工作的 甚至它如何实现延续 对于 C 的调用堆栈 我可以轻松想象它是如何实现和工作的 但对于这个 我不能 请帮助我理解它 我认为这不是一个简单的问题
smalltalk
callstack
continuations
stackframe
R中的parent.frame()和parent.env()有什么区别;它们在引用调用方面有何不同?
如果有人可以用一个简单的例子来说明这一点 那会有帮助吗 另外 什么地方有用parent frame 代替parent env 反之亦然 parent env是定义闭包 例如函数 的环境 parent frame是调用闭包的环境 f func
r
environment
functioncall
stackframe
在 x86 汇编中的过程中调用 ret 指令是否重要
我目前正在学习 x86 汇编 然而 当使用堆栈进行函数调用时 我仍然不清楚一些事情 据我所知 调用指令将涉及将返回地址压入堆栈 然后将要调用的函数的地址加载到程序计数器 ret 指令会将这个地址加载回程序计数器 我的困惑是 在过程 函数中调
Assembly
x86
stackmemory
stackframe
stackpointer
x86_64 汇编器中 RBP 寄存器的用途是什么?
我正在尝试学习一点汇编 因为我需要它来参加计算机体系结构课程 我写了一些程序 比如打印斐波那契数列 我认识到 每当我编写一个函数时 我都会使用这三行 正如我通过比较由gcc to its C相等的 pushq rbp movq rsp rb
c
Assembly
x8664
stackframe
stackpointer