C – 指针内存分配
有人可以向我解释之间的区别
int *x = malloc(sizeof(int));
&&
int *x = (int*)malloc(sizeof(int));
谢谢!
不同之处在于您在第二个示例中转换了malloc()
的返回值。 malloc()
返回一个void*
指针,在这种情况下,它会自动安全地提升为任何其他指针类型。
因此,不需要在这种情况下进行铸造,也不应该进行铸造。 点击这里
有人可以向我解释之间的区别
int *x = malloc(sizeof(int));
&&
int *x = (int*)malloc(sizeof(int));
谢谢!
不同之处在于您在第二个示例中转换了malloc()
的返回值。 malloc()
返回一个void*
指针,在这种情况下,它会自动安全地提升为任何其他指针类型。
因此,不需要在这种情况下进行铸造,也不应该进行铸造。 点击这里