#define निर्देश एक प्रीप्रोसेसर निर्देश है; प्रीप्रोसेसर उन मैक्रोज़ को उनके शरीर से बदल देता है इससे पहले कि कंपाइलर इसे देखे। इसे एक स्वचालित खोज के रूप में सोचें और अपने स्रोत कोड की जगह लें।
एक const चर घोषणा भाषा में एक वास्तविक चर घोषित करती है, जिसे आप एक वास्तविक चर की तरह उपयोग कर सकते हैं:इसका पता लें, इसे पास करें, इसे डालें, इसे रूपांतरित करें, आदि।
कंपाइलर अनुकूलन के बिना, अलग-अलग मामलों में इन दोनों के साथ जुड़े स्मृति आवंटन की एक छिपी हुई लागत है। लेकिन उचित अनुकूलन के साथ वे कमोबेश एक जैसे हैं। साथ ही, प्रीप्रोसेसर मैक्रोज़ का कोई दायरा नहीं होता है, जबकि कॉन्स्ट वैल्यूज़ करते हैं।