首页 > 编程知识 正文

c语言中int是什么意思,c语言int转换成char

时间:2023-05-06 05:51:14 阅读:49731 作者:2916

你必须强制指针“重新解释”:

reinterpret_cast(pointer;

此转换意味着编译器知道如何停止检查以更好地说明此表达式的二进制数据。 因此,每次执行reinterpret_cast时都会检查两次平台、内存对齐等知识。 创建简单的单元测试等,并在valgrind或地址屏幕程序中运行。

所以现在想想。 如果你真的需要投影这样的指针的话。 通常,重新设计功能等就可以解决这样的问题。 例如,如果只需要来自指定值的数据将其存储在一些额外的变量等中)。

也可以在编译器中强制执行一些检查。

模板

dst*safe_pointer_cast(src*src ) )是

{

static_assert(sizeof(src )==sizeof ) dest ),' size of pointed values differ ' );

static_assert(alignof(src )==align of (dest ) )、' alignment different ' );

返回重复项_ cast (src;

}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。