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

strpbrk() ใน C++


นี่คือฟังก์ชันสตริงใน C ++ ที่ใช้สองสตริงและค้นหาการเกิดขึ้นครั้งแรกของอักขระ string2 ใน string1 จะส่งคืนตัวชี้ไปยังอักขระใน string1 หากมี มิฉะนั้นจะคืนค่า NULL นี้ใช้ไม่ได้สำหรับการยกเลิกอักขระ NULL.

ไวยากรณ์ของ strpbrk() มีดังต่อไปนี้ -

char *strpbrk(const char *str1, const char *str2)

ในไวยากรณ์ด้านบน strpbrk() จะคืนค่าตัวชี้ไปยังอักขระตัวแรกใน str1 ที่ตรงกับอักขระใดๆ ใน str2

โปรแกรมที่แสดง strpbrk() มีดังต่อไปนี้

ตัวอย่าง

#include <iostream>
#include <cstring>
using namespace std;
int main() {
   char str1[20] = "aeroplane";
   char str2[20] = "fun";
   char *c;
   c = strpbrk(str1, str2);
   if (c != 0)
   cout<<"First matching character in str1 is "<< *c <<" at position "<< c-str1+1;
   else
   printf("Character not found");
   return 0;
}

ผลลัพธ์

First matching character in str1 is n at position 8

ในโปรแกรมข้างต้น ขั้นแรกให้กำหนดสองสตริง str1 และ str2 ตัวชี้ไปยังอักขระใน str1 ที่ส่งคืนโดย strpbrk() ถูกเก็บไว้ใน c หากค่าของ c ไม่ใช่ 0 อักขระและตำแหน่งของอักขระใน str1 จะปรากฏขึ้น มิฉะนั้น อักขระจะไม่อยู่ใน str1 สิ่งนี้แสดงให้เห็นโดยข้อมูลโค้ดต่อไปนี้

char str1[20] = "aeroplane";
char str2[20] = "fun";
char *c;
c = strpbrk(str1, str2);
if (c != 0)
cout<<"First matching character in str1 is "<<*c <<" at position "<< c-str1+1;
else
printf("Character not found");