由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - Re: 是不是真的懂C? 看看这行code, (转载)
相关主题
再问一个free()的问题问个程序问题
数组分配问题,求教c的问题(2)
再问:关于多维数组的malloc关于malloc/free和循环
C里面一个被分配了内存的指针如何知道分配了多少?请教一个程序调用的内存问题 (转载)
怎么得到char *分配空间的大小?帮忙回答一个老师的问题
大家新年好。 请教一个 c interview question谁知道这个问题的答案 (转载)
在子函数内开内存,返回主函数指针然后释放空间是不是很糟糕的(转载)初学C,对什么该free一直搞不明白
问一个c语言malloc的问题size不固定的struct怎么定义呀?
相关话题的讨论汇总
话题: free话题: malloc话题: sizeof话题: pf话题: pl
进入Programming版参与讨论
1 (共1页)
t*s
发帖数: 1
1
【 以下文字转载自 Military 讨论区 】
发信人: tns (TNS), 信区: Military
标 题: Re: 是不是真的懂C? 看看这行code,
发信站: BBS 未名空间站 (Thu Jun 18 22:52:27 2020, 美东)
也出个小题:
int *pi = malloc(sizeof (int));
long *pl = NULL;
float *pf = malloc(sizeof (float));
double *pd = malloc(sizeof (double));
FREE_ALL(pi, pl, pf, pd);
实现一下FREE_ALL,等效于下面的效果:
free(pi);
free(pf);
free(pd);
pl只是为了表明这个宏能接受空指针为参数
n******t
发帖数: 4406
2
用varadic macro就可以了。
但是實際操作裏面這樣並不推薦,因爲這個先後順序是很重要的,這麼寫非常容易出錯。
此外,free本來就可以take null。

【在 t*s 的大作中提到】
: 【 以下文字转载自 Military 讨论区 】
: 发信人: tns (TNS), 信区: Military
: 标 题: Re: 是不是真的懂C? 看看这行code,
: 发信站: BBS 未名空间站 (Thu Jun 18 22:52:27 2020, 美东)
: 也出个小题:
: int *pi = malloc(sizeof (int));
: long *pl = NULL;
: float *pf = malloc(sizeof (float));
: double *pd = malloc(sizeof (double));
: FREE_ALL(pi, pl, pf, pd);

t*s
发帖数: 1
3
没人帖个code?
n******t
发帖数: 4406
4
你要這東西的point是啥?寫起來很簡單,但是我認爲沒有場景能這麼寫。

【在 t*s 的大作中提到】
: 没人帖个code?
1 (共1页)
进入Programming版参与讨论
相关主题
ask a c question怎么得到char *分配空间的大小?
数组定义的时候,分配空间了么?大家新年好。 请教一个 c interview question
ask a simple question about int pointer.在子函数内开内存,返回主函数指针然后释放空间是不是很糟糕的(转载)
free(char *)的问题 (转载)问一个c语言malloc的问题
再问一个free()的问题问个程序问题
数组分配问题,求教c的问题(2)
再问:关于多维数组的malloc关于malloc/free和循环
C里面一个被分配了内存的指针如何知道分配了多少?请教一个程序调用的内存问题 (转载)
相关话题的讨论汇总
话题: free话题: malloc话题: sizeof话题: pf话题: pl