ฟังก์ชันสตริงในภาษาซี

เผยแพร่แล้ว: 2022-11-14

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

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

สารบัญ

สตริงคืออะไร

สตริงมีอยู่ในภาษาการเขียนโปรแกรมที่หลากหลาย แม้ว่า c จะประมวลผลสตริงที่แตกต่างจากภาษาโปรแกรมทั่วไป ในภาษาซี สตริงคืออาร์เรย์ของอักขระหนึ่งมิติ โดยที่อักขระสตริงแต่ละตัวใช้ตำแหน่งเดียวในอาร์เรย์ สตริงลงท้ายด้วยอักขระ null ที่กำหนดโดย '\0' ซึ่งหมายถึงจุดสิ้นสุดของสตริงใดๆ

ลองดูที่การแสดงอักขระและสตริง:

อักขระถ่าน[10] = {'w','e','l','c','o','m','e','\0'};

char string[10] = “ยินดีต้อนรับ”;

char string []= “ยินดีต้อนรับ”;

การสิ้นสุดสตริงด้วยอักขระ null เป็นสิ่งสำคัญในการจดจำลำดับของอักขระที่เป็นสตริง มิฉะนั้น จะเป็นเพียงลำดับของอักขระที่ไม่มีตัวสิ้นสุดที่เป็นโมฆะ โปรดทราบว่าสตริงจะอยู่ในเครื่องหมายอัญประกาศคู่ ในขณะที่เครื่องหมายอัญประกาศเดี่ยวจะล้อมรอบอักขระในลำดับ การประกาศสตริงเป็น string[10] จะจัดสรร 10 ไบต์ของสตริง ขณะที่สตริง[] จะจัดสรรหน่วยความจำระหว่างการทำงานของโปรแกรม

เรียนรู้หลักสูตรการพัฒนาซอฟต์แวร์ออนไลน์จากมหาวิทยาลัยชั้นนำของโลก รับโปรแกรม PG สำหรับผู้บริหาร โปรแกรมประกาศนียบัตรขั้นสูง หรือโปรแกรมปริญญาโทเพื่อติดตามความก้าวหน้าในอาชีพของคุณอย่างรวดเร็ว

ประกาศของสตริง

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

ตัวอย่างเช่น- char temp[]=” temp string”;

ที อี หน้า ที ผม กรัม \0

สตริงประเภทอักขระ เมื่อประกาศภายในเครื่องหมายอัญประกาศแล้ว '\0' จะถูกนำไปใช้โดยตรงที่ส่วนท้ายของสตริงเพื่อสิ้นสุดสตริง นอกจากนี้ยังสามารถแสดงเป็น char temp[]=” temp string”;

  • อักขระที่ประกาศเป็น 'string[6]' จะเก็บหน่วยความจำ 6 ไบต์เพื่อจัดสรรค่าสตริง ในทางกลับกัน การประกาศเป็น ' string[] ' จะจัดสรรพื้นที่ตามความต้องการผ่านการทำงานของโปรแกรม

การเริ่มต้นของสตริง

กระบวนการประกาศและการกำหนดค่าเริ่มต้นดำเนินไปพร้อมกัน โดยที่การประกาศจะประกาศการมีอยู่ของตัวแปร และการกำหนดค่าเริ่มต้นจะกำหนดค่าให้กับตัวแปรนั้น การเริ่มต้นของสตริงใน c มีหลายวิธีในการนำไปใช้ นี่คือบางส่วนของพวกเขา:

  • ถ่าน t[]=” สตริงชั่วคราว”;
  • ถ่าน t[10]=” สตริงชั่วคราว”;
  • ถ่าน t[]={'t','e','m', 'd','\0'};
  • ถ่าน t[5]={'t','e','m', 'd','\0'};

ฟังก์ชันสตริงในภาษาซี

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

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

ประเภทของฟังก์ชันสตริง

แทนที่จะใช้ลำดับรหัสที่ซับซ้อนเพื่อจัดการกับรหัส ฟังก์ชันสตริงที่สร้างขึ้นมาแบบต่างๆ สามารถใช้จัดการกับสตริงที่จัดเก็บไว้ในไลบรารีฟังก์ชันการจัดการสตริงมาตรฐานของภาษา C ที่เรียกว่า 'string.h'

ต่อไปนี้เป็นฟังก์ชันการจัดการสตริงทั่วไป:

1. ฟังก์ชัน printf() และ scanf()

ฟังก์ชัน scanf() ใช้เพื่อรับข้อมูลจากผู้ใช้จนกว่าจะเจอช่องว่างหรือจุดสิ้นสุด

ตัวอย่างเช่น:

#รวม <stdio.h>

int หลัก ()

{

int ทดสอบจำนวนเต็ม;

printf(“ใส่จำนวนเต็ม:“);

scanf(“%d”, &testInteger);

printf(“Number = %d”,testInteger);

กลับ 0;

}

เอาท์พุต:

ป้อนจำนวนเต็ม: 4

จำนวน = 4

ฟังก์ชัน printf() ส่งเอาต์พุตที่จัดรูปแบบแล้วไปยังหน้าจอ พิมพ์ทั้งสตริงและตัวแปร

ตัวอย่างเช่น:

#รวม <stdio.h>

int หลัก ()

{

// แสดงสตริงภายในเครื่องหมายคำพูด

printf (“การเขียนโปรแกรม C”);

กลับ 0;

}

เอาท์พุต:

การเขียนโปรแกรมภาษาซี

หลักสูตรและบทความยอดนิยมเกี่ยวกับวิศวกรรมซอฟต์แวร์

โปรแกรมยอดนิยม
โปรแกรม Executive PG ในการพัฒนาซอฟต์แวร์ - IIIT B โปรแกรมใบรับรอง Blockchain - PURDUE โปรแกรมใบรับรองความปลอดภัยทางไซเบอร์ - PURDUE MSC ในวิทยาการคอมพิวเตอร์ - IIIT B
บทความยอดนิยมอื่น ๆ
เงินเดือนวิศวกรคลาวด์ในสหรัฐอเมริกา 2021-22 เงินเดือนสถาปนิกโซลูชัน AWS ในสหรัฐอเมริกา เงินเดือนนักพัฒนาแบ็กเอนด์ในสหรัฐอเมริกา เงินเดือนนักพัฒนาส่วนหน้าในสหรัฐอเมริกา
เงินเดือนนักพัฒนาเว็บในสหรัฐอเมริกา คำถามสัมภาษณ์ Scrum Master ในปี 2022 จะเริ่มอาชีพใน Cyber ​​​​Security ในปี 2565 ได้อย่างไร ตัวเลือกอาชีพในสหรัฐอเมริกาสำหรับนักศึกษาวิศวกรรม

2. ฟังก์ชัน puts() และ gets()

ฟังก์ชัน gets() รับอินพุตของผู้ใช้ในขณะที่อ่านช่องว่างเป็นสตริง ในทางกลับกัน ฟังก์ชัน put() อนุญาตให้พิมพ์เอาต์พุตสตริงบนหน้าจอผู้ใช้

ตัวอย่างเช่น:

#include หลัก ()

Int หลัก()

{

อุณหภูมิถ่าน [20];

printf(“ใส่ชื่อของคุณ”);

ได้รับ (อุณหภูมิ);

printf("ชื่อของฉันคือ:");

ทำให้ (อุณหภูมิ);

กลับ 0;

}

3. ฟังก์ชัน strcpy()

ฟังก์ชัน strcpy() คัดลอกเนื้อหาของสตริงหนึ่งไปยังอีกสตริงหนึ่ง

ตัวอย่างเช่น:

#รวม <stdio.h>

#รวม <string.h>

int หลัก ()

{

ถ่าน s1[30] = “สตริง 1”;

char s2[30] = “สตริง 2 : ฉันจะคัดลอกลงใน s1”;

/* ฟังก์ชันนี้ได้คัดลอก s2 ลงใน s1*/

strcpy(s1,s2);

printf(“สตริง s1 คือ: %s”, s1);

กลับ 0;

}

เอาท์พุต:

สตริง s1 คือ: สตริง 2: ฉันจะคัดลอกลงใน s1

4. ฟังก์ชัน strlen()

แทนที่จะเขียนโปรแกรมด้วยตนเองเพื่อหาความยาวของสตริงใดๆ ให้ใช้ฟังก์ชัน strlen() เพื่อหาความยาวของสตริงใดๆ

ตัวอย่างเช่น:

#รวม <stdio.h>

#รวม <string.h>

int หลัก ()

{

char str1[20] = “หนังสือเริ่มต้น”;

printf(“ความยาวของสตริง str1 เมื่อ maxlen คือ 30: %d”, strnlen(str1, 30));

printf(“ความยาวของสตริง str1 เมื่อ maxlen คือ 10: %d”, strnlen(str1, 10));

กลับ 0;

}

เอาท์พุต:

ความยาวของสตริง str1 เมื่อ maxlen เป็น 30:13

ความยาวของสตริง str1 เมื่อ maxlen เป็น 10:10

5. ฟังก์ชัน strrev()

สามารถใช้ฟังก์ชัน strrev() เพื่อย้อนกลับเนื้อหาของสตริงใดๆ

ตัวอย่างเช่น:

#include<stdio.h>

#include<string.h>

int หลัก ()

{

อุณหภูมิถ่าน[20]=”ย้อนกลับ”;

printf(“สตริงก่อนย้อนกลับคือ: %s\n”, temp);

printf(“สตริงหลัง strrev() :%s”, strrev(temp));

กลับ 0;

}

6. ฟังก์ชัน strcmp()

ฟังก์ชัน strcmp() ใช้เพื่อเปรียบเทียบสองสตริง ฟังก์ชัน strcmp ใน C เปรียบเทียบคุณสมบัติร่วมกันระหว่างสองสตริงเพื่อส่งผลลัพธ์ หากสตริงคล้ายกัน strcmp ใน C จะจับได้

ตัวอย่างเช่น:

#รวม <stdio.h>

#รวม <string.h>

int หลัก ()

{

ถ่าน s1[20] = “หนังสือเริ่มต้น”;

ถ่าน s2[20] = “BeginnersBook.COM”;

ถ้า (strcmp(s1, s2) ==0)

{

printf(“สตริงที่ 1 และสตริงที่ 2 เท่ากัน”);

}อื่น

{

printf(“สตริงที่ 1 และ 2 แตกต่างกัน”);

}

กลับ 0;

}

เอาท์พุต:

สาย 1 และ 2 แตกต่างกัน

7. ฟังก์ชัน strcat()

ฟังก์ชัน strcat() ใช้เพื่อต่อท้ายสตริงต้นทางต่อท้ายสตริงปลายทาง (แมวหมายถึงการต่อ)

ตัวอย่างเช่น:

#รวม <stdio.h>

#รวม <string.h>

int หลัก ()

{

ถ่าน s1[10] = “สวัสดี”;

ถ่าน s2[10] = “โลก”;

strcat(s1,s2);

printf(“เอาต์พุตสตริงหลังการต่อข้อมูล: %s”, s1);

กลับ 0;

}

เอาท์พุต:

สตริงเอาต์พุตหลังการต่อข้อมูล: HelloWorld

8. ฟังก์ชัน strlwr()/strupr()

ฟังก์ชัน strlwr() และ strupr() ช่วยแปลงตัวอักษรจากตัวพิมพ์เล็กเป็นตัวพิมพ์ใหญ่และกลับกัน

ตัวอย่างเช่น:

#include<stdio.h>

#include<string.h>

int หลัก ()

{

char str[]=”แปลงฉันเป็นตัวพิมพ์เล็ก”;

printf(“%s\n”, strlwr(str));

กลับ 0;

}

เอาท์พุต:

แปลงฉันเป็นตัวพิมพ์เล็ก

ผลลัพธ์ที่ได้จะแปลงเป็นตัวพิมพ์ใหญ่หากเราใช้ ฟังก์ชัน strupr() แทน strlwr( )

เพิ่มโอกาสในการทำงานในฐานะโปรแกรมเมอร์

ความรู้อย่างถ่องแท้เกี่ยวกับภาษาซีหรือภาษาโปรแกรมอื่น ๆ สามารถช่วยให้คุณเริ่มต้นได้ดีสำหรับอาชีพด้านไอทีที่ประสบความสำเร็จ สิ่งที่คุณต้องมีคือใบรับรองระดับมืออาชีพและพื้นที่ความคิดเฉพาะเพื่อพัฒนาทักษะของคุณ โปรแกรมผู้บริหารของ upGrad ในการพัฒนาซอฟต์แวร์ ซึ่งขยายโดย Purdue University เป็นโอกาสของคุณในการเริ่มต้นอาชีพ Full-Stack ของคุณ

หลักสูตรของหลักสูตรจัดทำขึ้นตามทักษะล่าสุด รวมถึง MERN, การพัฒนา, สิ่งจำเป็นในการเขียนโปรแกรม, API, การพัฒนาส่วนหน้าและส่วนหลัง, DevOps และอื่นๆ น่าแปลกใจที่ผู้เรียนไม่จำเป็นต้องมีภาษาเขียนโค้ดมาก่อน ทำให้โปรแกรมเปิดกว้างสำหรับผู้ที่ต้องการเทคโนโลยีทุกคน!

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

เยี่ยมชม upGrad เพื่อเรียนรู้เพิ่มเติม!

บทสรุป

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

ฝึกฝนต่อไปเพื่อสำรวจพวกมันทั้งหมด!

สตริงและประเภทคืออะไร

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

อักขระว่างใน C คืออะไร?

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

ฟังก์ชั่นในภาษาซีคืออะไร?

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