|
1
5
在代码中,使用
方法
,
通常,对于函数指针,强制转换是一个非常糟糕的主意,因为引用
但是,在您的情况下,对于参数类型,
|
|
2
1
是的,您可以将函数指针强制转换为指向具有不同签名的函数的指针。取决于您的调用约定(谁清理堆栈?调用者还是被调用者?)如果参数数量不同或大小不同,则调用该函数会很糟糕。 这里也不是这样:在您的标准架构(sun工作站、Linux PC、树莓PI)上,指向不同数据类型的参数指针表示相同,因此不会造成任何伤害。该函数将从堆栈中读取4或8字节的值,并将指向的内存解释为预期类型的数据(但它应该具有这种类型,例如,不要对字符串使用浮点比较函数;它可能会抛出,因为任意位模式可以是NaN等)。
我想提醒你,今天的标准库
|
|
|
Fishie · 作为类成员的智能指针是否仍然自动释放?[关闭] 1 年前 |
|
|
Anka Hanım · 关于结构和动态数组地址的问题 1 年前 |
|
|
tTt · 使用堆栈中的值重新分配指针 1 年前 |
|
|
manuel · 现代C中空指针的替代方案++ 1 年前 |