将void*指针设置为等于整数
Setting void * pointer equal to an integer
我对以下代码有一个问题:
int age = 20;
void * pointer;
pointer = alloc(sizeof(int), 0)
pointer = (void*) age;
它是如何工作的?
pointer
的值是多少?
这段代码在以下行中发生了什么:
pointer = (void*) age;
这段代码完全没有完成任何任务。
首先,您使用非标准的分配方法为int
大小分配了一个指针。
然后,您将指针分配给地址0x14,该地址可能不包含任何有效信息,如果您试图取消引用它,则会给您一个SEGFAULT。
第三,您泄漏了alloc
为指针指定的初始内存,这从来都不是一件好事。
总的来说,这是一个非常糟糕的设计模式。
相关文章:
- 如何反转整数参数包
- enum是C++中的宏变量还是整数变量
- 努力将整数转换为链表。不知道我在这里做错了什么
- 整数不会重复超过随机数
- 在C++中手动调整数组大小
- 检查输入是否不是整数或数字
- C++使用整数的压缩数组初始化对象
- 在C++中,将大的无符号浮点数四舍五入为整数的最佳方法是什么
- C++相当于整数的 #define
- 在数组中输入 n 个整数的列表,并以类似于钟摆来回移动的方式排列它们. 输入-1 3 2 5 4,输出5 3 1 2 4
- 独立于实现的浮点/整数转换
- 使用不同的整数组装字符数组以类似于日期和时间
- 你能在任何独立于架构的低级语言中获得更小的整数吗?
- C++ - 泛型结构的成员在分配双精度时给出错误的值(但适用于整数)
- 对应于 AS3 编号(整数)的C++数据类型是什么?
- 对于作用于整数向量的循环行为异常
- PowerMod函数适用于小整数,不适用于大整数
- C++:二叉搜索树适用于整数,但当我尝试传递字符串时崩溃
- C++查找整数是否存在于矩阵的一列中
- 定义一个行为类似于整数无穷大的对象