Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

คำถามฝึกหัดเกี่ยวกับ Strings ใน C++


String เป็นส่วนสำคัญของการเขียนโปรแกรม Strings คืออาร์เรย์ของชนิดตัวอักขระ ในการสอบแข่งขันอย่าง GATE ก็เป็นหัวข้อสำคัญเช่นกัน มาดูจุดสำคัญเกี่ยวกับ string แล้วเราจะไปสู่คำถามบางข้อที่จะช่วยให้คุณเข้าใจ concept ของ string ชัดเจนขึ้น

String ในภาษาโปรแกรมสามารถเก็บได้สองวิธีที่แตกต่างกัน คือ การใช้ character array (char str[size]) และการใช้ pointer ที่ชี้ไปที่ string (char * ch = "Hello") มีสิ่งสำคอบบางอย่างเกี่ยวกับการใช้ character array และ pointer to string พวกเขาคือ

  • เพื่อหาขนาดของ string เราต้องส่ง instance ของ character array ของ string ไปยังเมธอด sizeof คือ sizeof(str)
  • จุดสิ้นสุดของ string ถูกทำเครื่องหมายด้วย null character คือ '\0'
  • มีเมธอดสำหรับหาความยาวของ string ชื่อว่า strlen()
  • ในการแก้ไข string คือการเปลี่ยนตัวอักขระของ string ใช้ char array ในขณะที่การเข้าถึงตัวอักขระเดี่ยวของ string ไม่สามารถทำได้โดยใช้ pointer

มาดูคำถามฝึกหัดบ้าง

ทายผลลัพธ์ของ

ตัวอย่างที่ 1

char name[] = "TutorialsPoint";
char *ptr = name;
cout<<++ptr;

ผลลัพธ์

utorialsPoint

ค่าของ pointer เพิ่มขึ้นหนึ่ง ดังนั้นจะเริ่มพิมพ์จากดัชนี 1

ตัวอย่างที่ 2

char name[] = "TutorialsPoint";
int length = strlen(name);
for(int i=length;i>1;i--)
    printf("%c", name[i]);

ผลลัพธ์

tniopslairot

พิมพ์สตริงย้อนกลับโดยเริ่มจาก length ถึง 1

ตัวอย่างที่ 3

char c[] = "LearnProgrammingAtTutorialsPoint";
char *p =c;
printf("%s", p + c[1] - c[2]+1) ;

ผลลัพธ์

ProgrammingAtTutorialsPoint

ที่นี่เราสร้าง pointer ไปที่ string และเพิ่มค่าของ pointer โดยดัชนีบางอย่างซึ่งพิมพ์ส่วนที่เหลือของ string