Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

สตริงในภาษาซี


สตริงคืออาร์เรย์ของอักขระและสิ้นสุดด้วยอักขระ null (\0) ผู้ใช้ไม่ได้วางอักขระ null ไว้ คอมไพเลอร์จะวางไว้ที่ส่วนท้ายของสตริงโดยอัตโนมัติ

ความแตกต่างระหว่างอาร์เรย์และสตริงคือ คอมไพเลอร์ไม่วางอักขระ null ที่ส่วนท้ายของอาร์เรย์ในขณะที่อยู่ในสตริง คอมไพเลอร์จะวางอักขระ null

นี่คือไวยากรณ์ของสตริงในภาษาซี

char myStr[size];

ที่นี่

myStr: สตริง

ขนาด: กำหนดขนาดของสตริง

เริ่มต้นสตริงในภาษา C ดังที่แสดงด้านล่าง -

char myStr[size] = “string”;
char myStr[size] = { ‘s’,’t’,’r’,’i’,’n’,’g’,’\0’ };

ตารางต่อไปนี้แสดงฟังก์ชันของสตริงในภาษาซี

ฟังก์ชัน วัตถุประสงค์
strcpy(s1, s2) คัดลอกสตริง s2 ลงในสตริง s2
strcat(s1, s2) เชื่อม s2 เข้ากับจุดสิ้นสุดของ s1
strlen(s1) คืนค่าความยาวของสตริง s1
strcmp(s1, s2) คืนค่า 0 เมื่อ s1 และ s2 เหมือนกัน มากกว่า 0 เมื่อค่า ASCII ของ s1 มากกว่า s2 น้อยกว่า 0 เมื่อค่า ASCII ของ s1 น้อยกว่า s2
strchr(s1, ch) ส่งกลับตัวชี้ไปที่การเกิดขึ้นครั้งแรกของอักขระ ch ในสตริง s1
strstr(s1, s2) คืนค่าตัวชี้ไปที่การเกิดขึ้นครั้งแรกของสตริง s2 ในสตริง s1

นี่คือตัวอย่างสตริงในภาษาซี

ตัวอย่าง

#include <stdio.h>
#include <string.h>
int main () {
   char s1[10] = "Hello";
   char s2[10] = "World";
   int len, com ;
   strcpy(s1, s2);
   printf("Strings s1 and s2 : %s\t%s\n", s1, s2 );
   strcat( s1, s2);
   printf("String concatenation: %s\n", s1 );
   len = strlen(s1);
   printf("Length of string s1 : %d\n", len );
   com = strcmp(s1,s2);
   printf("Comparison of strings s1 and s2 : %d\n", com );
   return 0;
}

ผลลัพธ์

Strings s1 and s2 : WorldWorld
String concatenation: WorldWorld
Length of string s1 : 10
Comparison of strings s1 and s2 : 87