考考你,下面的函数为什么要这么写!!
本来是自己想问的,可是问题发出来后,自己就想到了原因,所以就弄个智力题算了。大家可以娱乐一下。O(∩_∩)O
MagickExport void *AcquireQuantumMemory(const size_t count,const size_t quantum)
{
size_t
size;
size=count*quantum;
if ((count == 0) || (quantum != (size/count)))
{
errno=ENOMEM;
return((void *) NULL);
}
return(AcquireMagickMemory(size));
}
其中判断count的值为什么不在 size=count*quantum;之前进行。为什么判断中还会有(quantum != (size/count));