dhvcc Asked:2020-02-22 00:06:45 +0000 UTC2020-02-22 00:06:45 +0000 UTC 2020-02-22 00:06:45 +0000 UTC 宏定义 772 在做实验的过程中,我遇到了一个任务,你只需要编写一个程序来计算矩阵的乘积,同时动态分配内存。听起来很简单,但最后我发现了这个 创建宏定义,计算程序使用动态内存分配和释放函数的次数,以及分配和释放的内存量。 除了关于#define、#if 等的解释外,培训手册中没有任何内容。我想知道它是关于什么的) c 1 个回答 Voted Best Answer Harry 2020-02-22T00:17:56Z2020-02-22T00:17:56Z 看起来他们想要类似的东西 int total = 0; int mallocs = 0; int frees = 0; #define malloc(s) (mallocs++, total += (s), malloc((s))) #define free(s) (frees++, free((s))) int main(int argc, const char * argv[]) { char * c = malloc(200); char * v = malloc(2000); free(c); printf("Alloc %d bytes in %d mallocs; frees: %d times\n", total, mallocs,frees); }
看起来他们想要类似的东西