【发布时间】:2015-10-10 17:41:35
【问题描述】:
关于问题和答案 here:我可以使用这种方法,以便解决方案独立于平台。
char *buff = (char*) malloc(sizeof(unsigned long)*8);
sprintf(buff, "%lu", unsigned_long_variable);
在这里我得到缓冲区长度的值,因为它类似于 unsigned long 变量。这种方法正确吗?
【问题讨论】:
-
请see why not to cast
malloc()和C中的family返回值。 -
@SouravGhosh :感谢您的提示,但这与我的疑问有关吗?!我试图了解上述方法是否独立于平台。我想了解上述方法是否正确。如有不妥,纯属理解学习之用!!
-
@SouravGhosh,这是你的习惯吗?到处张贴这个无关紧要且备受争议的建议?
-
@SouravGhosh:问题是也有参数 for 转换返回值(请参阅 unwind 接受的答案下的 cmets),并在每个问题下发布该链接确实演员
malloc()是......好吧,如果我在每个违反它的问题下发布指向我最喜欢的编码风格指南的链接,你会说什么? -
@DevSolar 先生,也许对于像我们这样的“常客”来说,这是重复的,但我认为这对于通过谷歌搜索登陆特定问题的人很有用。另外,我从未说过这是必须。我添加了指向问题本身的链接(以避免任何可能的偏见),其中最受好评的答案有利于评论正文。 :-)