في C ، هل هناك فرق بين المؤشرات الثلاثة التالية "int * char" و "int * char" و "int * char"؟


الاجابه 1:

شكرا على A2A.

هناك بالفعل 2 إجابات جيدة ؛ كما قال كيفن ، لا يهتم المترجم بالمكان الذي تضع فيه المسافات البيضاء حول "*" ، وكما قال رادو ، char هو نوع مدمج بحيث لا يمكنك استخدامه كاسم متغير. سأتجاهل خطأ بناء الجملة من الآن فصاعدًا.

لا أرى النمط الأول في الشفرة ، وعادةً ما يكون النمط الثاني أو الثالث. ما هو أفضل"؟ حسنًا ، يمكن تقديم حجة لصالح أي منهما ، ويمكن للناس بدء الحروب "الدينية" حول هذه القضية غير المهمة ، تمامًا مثل الأقواس المعقوفة. لا تهتم. اختيار واحد ، واستخدامها باستمرار. إذا كانت الاتفاقية المعمول بها في فريقك (معايير الترميز أو اتفاقية غير رسمية ، حتى ضمنية) تنص على استخدام واحدة منها ، فقم بذلك. ببساطة لا يهم ، فقط حاول أن تكون ثابتًا.

لكن إليك نصيحة جيدة: عندما تعلن / تحدد مؤشرات ، فكلها واحدة في كل صف. خلاف ذلك ، قد ينشأ ارتباك فيما يتعلق بأي من المتغيرات هو مؤشر وأيها لا. إنه أيضًا أجمل / أكثر قابلية للقراءة ، حيث أنك ستقوم بتهيئة مؤشراتك ... أليس كذلك؟ ؛-)