Bellekle sizeofilgili işlemler için kullanmanın iki stilini gördüm (örneğin memsetveya içinde malloc):
sizeof(type), vesizeof variableveyasizeof(variable)
Hangisini tercih edersiniz, ya da iki stilin bir karışımını kullanırdınız ve her bir stili ne zaman kullanırdınız? Her stilin artıları ve eksileri nelerdir ve bunları kullandığınızda?
Örnek olarak, bir stilin yardımcı olduğu ve diğerinin desteklemediği aşağıdaki durum çiftini görebiliyorum:
İşaretçi yönlendirmesini yanlış aldığınızda:
type *var;
...
memset(var, 0, sizeof var); /* oops */
Tür değiştiğinde:
new_type var; /* changed from old_type to new_type */
...
memset(&var, 0, sizeof(old_type)); /* oops */