சி நிரலாக்க மொழியில் இரண்டு சரங்களை ஒப்பிடுவது எப்படி

நூலாசிரியர்: William Ramirez
உருவாக்கிய தேதி: 18 செப்டம்பர் 2021
புதுப்பிப்பு தேதி: 1 ஜூலை 2024
Anonim
இரண்டு சரங்களை ஒப்பிட C_68 C நிரல் | strcmp() மற்றும் strcmp() செயல்பாடு இல்லாமல்
காணொளி: இரண்டு சரங்களை ஒப்பிட C_68 C நிரல் | strcmp() மற்றும் strcmp() செயல்பாடு இல்லாமல்

உள்ளடக்கம்

எந்த சரம் அதிக எழுத்துக்களைக் கொண்டுள்ளது என்பதைக் கண்டுபிடிக்க சரம் நீளங்களை ஒப்பிடுவது சி குறியீட்டில் மிகவும் பொதுவானது. தரவுகளை வரிசைப்படுத்த இது பயனுள்ளதாக இருக்கும். சரங்களை ஒப்பிடுவதற்கு ஒரு சிறப்பு செயல்பாடு தேவை - பயன்படுத்த வேண்டாம் != அல்லது ==.

படிகள்

  1. 1 சி நிரலாக்க மொழி சரம் நீளங்களை ஒப்பிடுவதற்கு நீங்கள் பயன்படுத்தக்கூடிய இரண்டு செயல்பாடுகளை உள்ளடக்கியது. இந்த இரண்டு செயல்பாடுகளும் நூலகத்தில் சேர்க்கப்பட்டுள்ளன string.h>.
    • strcmp () - இந்த செயல்பாடு இரண்டு சரங்களை ஒப்பிட்டு, எழுத்துக்களின் எண்ணிக்கையில் உள்ள வித்தியாசத்தை அளிக்கிறது.
    • strncmp () - இந்த செயல்பாடு போலவே உள்ளது strcmp () முதல் தவிர என் எழுத்துக்கள். அதிகப்படியான தோல்விகளைத் தவிர்ப்பதால் இது மிகவும் பாதுகாப்பானதாகக் கருதப்படுகிறது.
  2. 2 தேவையான நூலகங்களுடன் நிரலைத் தொடங்குங்கள். உங்களுக்கு நூலகங்கள் தேவைப்படும் stdio.h> மற்றும் string.h>உங்கள் குறிப்பிட்ட திட்டத்திற்கு தேவையான வேறு எந்த நூலகங்களும்.

    #stdio.h> #string.h> ஐ சேர்க்கவும்

  3. 3 செயல்பாட்டை உள்ளிடவும் int. இரண்டு சரங்களின் நீளத்தை ஒப்பிடுவதன் விளைவாக ஒரு முழு எண்ணை அளிக்கிறது.

    #stdio.h> #சேர்க்கவும் string.h> int main () {}

  4. 4 நீங்கள் ஒப்பிட விரும்பும் இரண்டு சரங்களை அடையாளம் காணவும். எங்கள் எடுத்துக்காட்டில், இரண்டு வகையான சரங்களை ஒப்பிடுவோம் கரி... திரும்ப மதிப்பை ஒரு முழு எண்ணாக வரையறுக்கவும்.

    #அடங்கும் stdio.h> #string.h> int main () {char * str1 = "apple"; char * str2 = "ஆரஞ்சு"; int ret; }

  5. 5 ஒரு ஒப்பீட்டு செயல்பாட்டை உள்ளிடவும். எங்கள் எடுத்துக்காட்டில், நாங்கள் செயல்பாட்டைப் பயன்படுத்துவோம் strncmp ()... அதில் நீங்கள் அளவிடப்பட்ட எழுத்துக்களின் எண்ணிக்கையை அமைக்க வேண்டும்.

    #stdio.h> #string.h> int main () {char * str1 = "apple"; char * str2 = "ஆரஞ்சு"; int ret; ret = strncmp (str1, str2, 8); / * இரண்டு எழுத்துக்களை 8 எழுத்துக்கள் நீளம் வரை ஒப்பிடுகிறது * /}

  6. 6 நிபந்தனை அறிக்கையை உள்ளிடவும் என்றால்... வேறு. எந்த கோடு நீளமானது என்பதைக் காட்ட இது தேவை. செயல்பாடு strncmp () எண்ணைத் திருப்பித் தரும் 0சரங்களின் நீளம் ஒரே மாதிரியாக இருந்தால், str1 நீளமாக இருந்தால் நேர்மறை எண், மற்றும் str2 நீளமாக இருந்தால் எதிர்மறை எண்.

    #stdio.h> #string.h> int main () {char * str1 = "apple"; char * str2 = "ஆரஞ்சு"; int ret; ret = strncmp (str1, str2, 8); (ret> 0) {printf ("str1 நீளமானது"); } இல்லையெனில் (ret 0) {printf ("str2 நீளமானது"); } வேறு {printf ("வரி நீளம் சமம்"); } திரும்ப (0); }

எச்சரிக்கைகள்

  • சரங்களின் நீளம் சமமாக இருந்தால், மதிப்பு 0 திருப்பித் தரப்படும் என்பதை நினைவில் கொள்ளுங்கள். இது குழப்பமாக இருக்கலாம், ஏனெனில் 0 கூட தவறானது.