การตั้งชื่อในภาษา C

ภาพรวม


การตั้งชื่อในภาษา C แสดงถึงชื่อของเอนทิตีต่างๆ เช่น อาร์เรย์ ฟังก์ชัน ตัวแปร ชนิดข้อมูลที่กำหนดโดยผู้ใช้ ป้ายกำกับ ฯลฯ คือการตั้งชื่อของประเภทของสตริงของอักขระที่เป็นตัวอักษรและตัวเลขคละกันที่ขึ้นต้นด้วยตัวอักษรหรือขีดล่างเสมอ มีกฎเฉพาะสำหรับกำหนดการตั้งชื่อ และเราไม่สามารถใช้คีย์เวิร์ดที่กำหนดไว้แล้วซึ่งแสดงอยู่ในภาษา C ใช้ในการตั้งชื่อได้

ขอบเขต

  • บทความนี้กำหนดการตั้งชื่อ Identifier ใน ภาษา C และยังอธิบายประเภทต่างๆ
  • บทความนี้ยังกล่าวถึงกฎที่ต้องปฏิบัติตามเพื่อตั้งชื่อ Identifiers ประเภทต่างๆ


บทนำ


เช่นเดียวกับในชีวิตประจำวันของเรา ทุกสิ่งมีชื่อที่เกี่ยวข้องกัน เพื่อระบุสิ่งนั้น ในทำนองเดียวกันเพื่อระบุตัวแปร ฟังก์ชัน ประเภทข้อมูลที่กำหนดโดยผู้ใช้ ฯลฯ เราต้องจัดเตรียมชื่อที่เป็น Identifiers ในภาษาการเขียนโปรแกรม ในภาษาซี Identifiers เป็นเพียงข้อความหรือสตริงบางส่วนเพื่อระบุเอนทิตีต่างๆ คำที่กำหนดไว้ล่วงหน้าบางคำถูกเขียนขึ้นในภาษาการเขียนโปรแกรม ซึ่งเรียกว่าคีย์เวิร์ดและเราไม่สามารถใช้คีย์เวิร์ดเหล่านี้เป็น Identifiers ได้เนื่องจากมีการจองไว้แล้วและมีความหมายพิเศษในภาษาการเขียนโปรแกรม ดังนั้นจึงเป็นไปไม่ได้ที่คอมไพเลอร์จะใช้เอนทิตีที่แตกต่างกันสองรายการที่มีชื่อเดียวกัน

กฎสำหรับการตั้งชื่อ Identifier


มีกฎเฉพาะสำหรับการตั้งชื่อ Identifier ในภาษา C

  • เราไม่สามารถใช้คีย์เวิร์ดใด ๆ ตั้งเป็นชื่อได้
  • การตั้งชื่อทั้งหมดควรมีชื่อที่ไม่ซ้ำในขอบเขตเดียวกัน
  • การตั้งชื่อไม่สามารถเริ่มต้นด้วยตัวเลขได้
  • อักขระตัวแรกของตัวการตั้งชื่อควรเริ่มต้นด้วยตัวอักษรหรือขีดล่างเสมอ จากนั้นตามด้วยอักขระ ตัวเลข หรือขีดล่างใดๆ
  • ไม่อนุญาตให้ใช้อักขระพิเศษ เช่น ‘*’,’#’,’@’,’$’ ภายในตัวระบุ
  • การตั้งชื่อทั้งหมดต้องคำนึงถึงขนาดตัวพิมพ์ หมายความว่าตัวระบุhelloและHelloจะได้รับการปฏิบัติต่างกัน อย่างไรก็ตาม ชื่อทั้งสองเหมือนกัน แต่ชื่อหนึ่งมีอักษรตัวพิมพ์เล็ก และอีกชื่อหนึ่งมีอักษรตัวพิมพ์ใหญ่
  • ความยาวของการตั้งชื่อไม่ควรเกิน 31 อักขระ
  • ไม่อนุญาตให้มีช่องว่างหรือเครื่องหมายจุลภาคภายในตัวระบุ

ตัวอย่างการตั้งชื่อ C Identifier

#include <stdio.h>

// creating a function 
int add(int num1, int num2) {
  return num1 + num2;
}

int main() {

  // creating some data variables 
  char Character = 'a';
  double double_number = 3.789;
  int long_identifier_to_store_sum = add(1, 2);

  int arr[5]; // array of size five
  return 0;
}


ในโปรแกรม C ด้านบน ขั้นแรก เราได้สร้างฟังก์ชันที่มีการตั้งชื่อเพิ่มเพื่อค้นหาผลรวม ฟังก์ชันนี้มีพารามิเตอร์สองตัวที่มีชื่อ num1 และ num2 ในฟังก์ชันหลัก เราได้สร้างตัวแปรประเภทข้อมูลที่แตกต่างกันสามตัวพร้อมตัวระบุ Character , double_numberและlong_identifier_to_store_sum ในที่สุด สร้างอาร์เรย์ด้วยตัวระบุ arr

การตั้งชื่อที่ถูกต้อง


การตั้งชื่อที่ถูกต้องคือตัวระบุเหล่านั้นที่ปฏิบัติตามกฎทุกข้อของการตั้งชื่อของตัวระบุที่เราได้กล่าวถึงข้างต้น

ตัวอย่างของการตั้งชื่อ C ที่ถูกต้อง

  • length – ประกอบด้วยตัวอักษรตัวพิมพ์เล็กเท่านั้น
  • Total_sum – มีเพียง ‘_’ เป็นอักขระพิเศษ
  • _size – เริ่มต้นด้วยขีดล่าง’ _’ * len_ – ประกอบด้วยตัวอักษรพิมพ์เล็กและขีดล่าง
  • num1 – ในที่นี้ ตัวเลขจะอยู่ท้ายสุด
  • num_2 – เริ่มต้นด้วยตัวพิมพ์เล็กและลงท้ายด้วยตัวเลข


การตั้งชื่อที่ไม่ถูกต้อง

การตั้งชื่อที่ไม่ถูกต้องคือการตั้งชื่อที่ไม่เป็นไปตามกฎทุกข้อของการตั้งชื่อแบบแผนของการตั้งชื่อ

ตัวอย่างของการตั้งชื่อ C ไม่ถูกต้อง

  • 5size (เริ่มต้นด้วยตัวเลข)
  • \@hello (เริ่มต้นด้วยอักขระพิเศษที่ไม่ใช่ ‘_’)
  • int (เป็นคีย์เวิร์ด)
  • m n (มีช่องว่าง)
  • m+n (มีอักขระพิเศษ)


ประเภทของ Identifiers ในC


Identifier ในภาษาซีมีอยู่สองประเภท

  • Internal identifier
  • External identifier

External Linkage Process:เมื่อเราเขียนไฟล์การใช้งาน (.c, .cpp ฯลฯ) คอมไพเลอร์จะสร้างหน่วยการแปล หน่วยการแปลเป็นไฟล์ต้นฉบับที่เป็นการรวมกันของทั้งไฟล์ที่ใช้งานและไฟล์ส่วนหัวทั้งหมดที่รวมอยู่ในนั้น การเชื่อมโยงภายในหมายถึงทุกสิ่งในขอบเขตของหน่วยการแปลเท่านั้น ในทางตรงกันข้ามการเชื่อมโยงภายนอกหมายถึงโปรแกรมทั้งหมดที่รวมหน่วยการแปลทั้งหมด (หรือไฟล์อ็อบเจ็กต์)

Internal identifier ตัวระบุภายใน

ตัวระบุภายในคือสิ่งที่ไม่ได้ใช้ในกระบวนการลิงก์ภายนอกใดๆ ตัวระบุภายใน หรือที่เรียกว่าชื่อภายใน ; รวมชื่อของตัวแปรท้องถิ่น ตัวระบุภายในสามารถเป็นตัวแปรในเครื่องได้ มีอักขระสำคัญอย่างน้อย 31 ตัว

External identifier ตัวระบุภายนอก

ตัวระบุภายนอกคือสิ่งที่ใช้ในกระบวนการลิงก์ภายนอก ตัวระบุ เหล่านี้เรียกอีกอย่างว่าชื่อภายนอก รวมชื่อฟังก์ชันและ ชื่อ ตัวแปรส่วนกลางที่แชร์ระหว่างไฟล์ต้นทาง ตัวระบุภายนอกสามารถเป็นชื่อของฟังก์ชันหรือตัวแปรส่วนกลางได้ มีอักขระสำคัญอย่างน้อย 63 ตัว


สรุป

  • Identifier คือสตริงที่ใช้ในการกำหนดหรือระบุเอนทิตี
  • Identifier คือคำที่ผู้ใช้กำหนดซึ่งยังไม่ได้กำหนดในภาษาการเขียนโปรแกรมและกำหนดโดยผู้ใช้
  • Identifier ควรไม่ซ้ำกันเสมอ หมายความว่าไม่มีสองเอนทิตีที่มีชื่อเหมือนกัน
  • Identifier ไม่ควรเหมือนกับคีย์เวิร์ดที่กำหนดไว้แล้วในภาษาการเขียนโปรแกรม


credit : https://www.scaler.com/topics/c/

Leave a Reply

Your email address will not be published. Required fields are marked *