malloc和ptr=(int*)malloc(100*sizeof(int))

malloc和ptr=(int*)malloc(100*sizeof(int)),c,C,使用ptr=(int*)malloc(100*sizeof(int))的malloc如何分配动态内存分配。它不应该是静态内存分配吗 指针可以是静态的。Malloced内存始终是动态的不清楚您在问什么。如果您必须进行函数调用才能获取它,它怎么可能是静态的?为什么您认为它应该是静态内存分配?不幸的是,这一点现在被搁置。你对“动态”的含义感到困惑。这不仅仅是分配的内存大小是否固定的问题。通常,自动(堆)分配需要固定大小。动态分配可以使用固定或可变大小。您可能希望在几种情况下使用固定大小的动态分配—大量

使用
ptr=(int*)malloc(100*sizeof(int))
的malloc如何分配动态内存分配。它不应该是静态内存分配吗


指针可以是静态的。Malloced内存始终是动态的

不清楚您在问什么。如果您必须进行函数调用才能获取它,它怎么可能是静态的?为什么您认为它应该是静态内存分配?不幸的是,这一点现在被搁置。你对“动态”的含义感到困惑。这不仅仅是分配的内存大小是否固定的问题。通常,自动(堆)分配需要固定大小。动态分配可以使用固定或可变大小。您可能希望在几种情况下使用固定大小的动态分配—大量内存、内存持久性、递归函数。数组和指针所需的内存被混淆。如果“int array_1[10]”保存4*10=40字节,“int*ptr”“ptr=(cast*)malloc(4*int(*ptr))”保存4*4=16字节。它们都在缓冲区中保存内存插槽。区别是什么混淆了数组和指针所需的内存。如果“int array_1[10]”保存4*10=40字节,“int*ptr”“ptr=(cast*)malloc(4*int(*ptr))”保存4*4=16字节。它们都在缓冲区中保存内存插槽。区别是什么????Malloc在运行时在堆上动态分配内存。示例中的第一个数组放在堆栈(自动变量)或静态变量存储区域中。事实上,如果编译器支持可变长度数组,那么也可以动态分配自动变量。不同之处在于位置