មេរៀនទី 08-string and text

Upload: sopheap-sang

Post on 08-Jan-2016

33 views

Category:

Documents


0 download

DESCRIPTION

មេរៀនទី 08-String and Text

TRANSCRIPT

  • emeronTI8

    String & Text

    I. etI String KWCaGVI ?

    String KWCaesrIn Character dak;kgcenaHsBaa double quote ( ) Edl manrab;bBalTaMg Space nigsBaaBiessepSg (\0) eTot. ral;eBleyIgbeBajXamYyelIeGRkg;edayeRbI printf(), KWeyIg)aneGay niymnyXaenaHfaCa String Constant. ]TahrN_dUcCa printf(This is a string.); printf(BBU); printf(UNIVERSITY); bNa Character rbs; String mYy RtUv)anpkkg Byte Memory mYyeday tMl ASCII rbs; Character enaH. ASCII rbs; Character nImYy RtUv)andMerob Cab;Ka BImYyeTAmYykg Memory nigeBlcb; String enaHkg Memory RtUvpk \0 EdlCasBaabBab; String. cUrBinitemIlfa etI String Constance n]TahrN_TaMg 3 xagelIRtUv)anTukkg Memory y:agdUemc? cUremIlkgrUb xageRkam

  • 164

    C eRbIsBaaBiess (\0) Edlman ASCII es IsUneFVICasBaabBab; String. dUecHkarrkSaTuk String mYyenAkg Memory enaHcMnYn Byte RtUveRbI RtUvEtelIs cMnYn Character n String mYy Byte Canic.

    ]TahrN_ #include stdio.h #include conio.h void main() { printf(The character \0 is used to terminate a string); printf(The character to terminate a string is at the end of string); getch(); } lTplelIeGRkg;KW The character The character to terminate a string is at the end of string bnat;TI 1 vabgajEt The character eRBaHEtmansBaabBab; String (\0) enAcenaHkNal (EdleBlenH (\0) RtUv)aneyIgdak;edayxng). bnat;TI 2 vabgajTaMgGs; BIeRBaHsBaabBab; String (\0) enAxagcug eRkaybgs;n String (EdleBlenH (\0) RtUv)andak;bMeBjeday Compiler).

    66 66 85 00

    B B U \0

  • 165

    II. meFa)ayeRbIR)as; String

    II.1 karRbkasGefr String eday Array of char TMrg;nkarRbkas char9eQaHGefr[cMnYntYGkSr]; ]TahrN_dUcCa char str[20] ; eBlenHeyIg)an Gefr str Gacpk)anrhUtdl; 19 Character cMENk mYy Byte cugeRkaysMrab;Tuk \0.

    karPab;tMlcab;epImeGay String : + eyIgGacPab;tMlcab;epImeGayGefr String tamrebobdUcxageRkam char string[] = This is a string; enHCakarRbkas String EdlmaneQaH string , KankMNt;cMnYntYGkSr ehIyPab;tMlcab;epImeGayPamedayXa This is a string. eBlenH Compiler nwgpt;pg; Memory cMnYn 17 byte edayrab;bBalTaMg \0 (sBaabBab; String) sMrab;Gefr string. karRbkastamTMrg;xagelIenH KWminGacKankarPab;tMlcab;epWm)aneT ebIsinCaK ankarPab;tMlcab;epImenaH Compiler nwgminGackMNt;cMnYn byte EdlRtUvpt;pg;sMrab;GefrenH)aneLIy EdlCaehtunaMeGaymankMhusPam. + eyIgGacPab;tMlcab;epImeGayEpkmYyrbs; Array of char tamrbob dUcxageRkam char str[40] = To do; Compiler nwgpt;pg; Memory cMnYn 40 byte sMrab;Gefr str kgenaH 5 FatudMbUgcab;BI str[0]str[4] RtUv)anPab;tMlcab;epImedayBak To9do cMENk bNaFatucab;BI str[5] rhUtdl; str[39] RtUv)anpktMlsUnTaMgGs; (RtUvcaMfa sUnKWCatMl ASCII rbs;sBaabBab; String \0) EtFatuTaMgenHeyIgGac eRbIR)as;vaeGaypktMlepSgenAeBleRkay)an.

  • cUrBinitemIlkmviFIxageRkam EdlmankarRbkasGefr string CamYynwgkar Pab;tMlcab;epImeGayvaenAeBlRbkasPam bnab;mkeyIgGaceRbIGefrEdl)an Pab;tMlcab;epImenH eGayrkSaTuk String NamYyepSgeTot)an. kgenaHkman karbgajGMBIrebobeRbI scanf edIm,IbBalTinnyeGayGefr string Edr. #include #include void main() { char string[40] = hello; /* Pab;tMlcab;epImeGayGefr string */ clrscr() printf(\nstring : %s, string); /* bgajtMlrbs; string */ scanf(%s, string); /* bBalTinnyf IeGayGefr string */ printf(\nstring : %s, string); /* bgajTinnyfIrbs; string */ getch(); } ebIeyIgbBalfa abcdefghijkl enaH lTplrbs;kmviFIKW string : hello abcdefghijkl string : abcdefghijkl

    + eyIgGacPab;tMlcab;epImeGay String Constant tamTMrg;dUcxageRkam const char str[] = Hello world; eRkayeBlRbkasenHrYc str minGacpas;brTinny)aneT eRBaHvaRtUv)an RbkasCacMnYnefredayBakKnwH const rYceTAehIy.

    II.2 Tinnyecj nigTinnycUlCa String

    II.2.1 TinnyGancUlmanRbePTCa String

    xageRkamenHCabNaGnuKmn_sMrab;GanykTinnyRbePT String :

    166

  • + scanf(%s, str); GnuKmn_sMrab;Gan String EdlKan Space, tab, \n BI Keyboard. ]TahrN_fa ebIGkvaybBalnUvXa Welcome to BBU enaHGnuKmn_ scanf nwgGan)anEtBak Welcome b:ueNaH. + gets(str) CaGnuKmn_sMrab;GanykbNa Character (String) Edl)an bBalBI Keyboard rYcPab;eGayeTAbNaFatunImYyrbs; str rhUtdl;eBlNa EdlGkeRbI)ancuc Enter enaHeTIbcb;karGan. dUecH gets manlTPaBGacGan yk)anTaMg Space nig Tab.

    II.2.2. bgajTinnyEdlmanRbePTCa String

    bNaGnuKmn_EdlmanmuxgarsMrab;bgajTinnyRbePTCa String elIeGRkg; rYmmandUcCa printf(Test string); puts(Test string); GnuKmn_TaMgBIrxagelIenHsuTEtmanmuxgarbgajXa Test string elIeGRkg; kb:uEnvamanlkNxusKabnicRtg;fa eRkayeBlbgaj String EdlsitkgsBaa bouble quot elIeGRkg;rYcehIy GnuKmn_ puts nwgbBan Cursor eGaycuHeTAkan; edImbnat;f I. III. Array of String

    Gk)andwgrYcmkehIyfa String GacRtUv)aneKrkSaTukenAkg Array mYy vimaRt. enAkgcMNucenH Gknwg)aneXIjGMBIrebobeRbI Array BIrvimaRtedIm,IrkSa Tuk String EdlCYredknImYyrbs;vaRtUv)anpk String mYyerogxn. cUrBinitemIl ]TahrN_xageRkamenH #include #include void main() { char str[2][50] = { {"To be or not to be , "}, {"that is the question"} }; int count1 = 0; /* RbEvgrbs; String TI 1 */ int count2 = 0 ; /* RbEvgrbs; String TI 2 */

    167

  • /* kMNt;RbEvgrbs; String TI 1 */ clrscr(); while(str[0][count1] != '\0') /* xNEdlminEmnCasBaa \0 */ count1++; /* begIntMlGefrrab; */ /* kMNt;RbEvgrbs; String TI 2 */ while(str[1][count2] != '\0') count2 ++; /* BinitemIletI String str[0] manTMhMRKb;RKan;sMrab;pk String TaMgBIrxagelIEdrbeT? */ if(sizeof(str[0]) < count1+count2 + 1) printf("\nNot enough space."); else { /* cab;epImtMlGefrrab; count2 Caf IeLIgvij */ count2 = 0; /* cMlgBI String TI 2 bEnmeTAelI String TI 1 */ while((str[0][count1++] = str[1][count2++]) != '\0' ); /* bgaj String TI 1 eRkayeBlcMlgrYcelIeGRkg; */ printf("\n%s",str[0]); } getch(); } lTplrbs;kmviFIelIeGRkg;KW To be or not to be , that is the question ]TahrN_TI 2 : eRbI Array 2 vimaRtedIm,IdMerob String #include #include #include #include

    168

  • void arrange(int n, char x[][12]); /*RbkasTMrg;GnuKmn_ */ void main() { int i, n=0; char x[10][12]; clrscr(); printf("Input strings on the difference line \n\n"); printf("press \'end\'to finish\n\n"); /* GanykbNa String BI Keyboard */ do{ printf("string %d:", n+1); scanf("%s", x[n]); }while (strcmp(x[n++],"end")); /* eRbobeFobemIlfaetI String Edl )anbBalmunenHCa end EdrbeT? */ /* bnytMl n */ n--; /* ehAGnuKmn_edIm,IdMerobbNa String Edl)anbBal */ arrange(n, x); /* bgajbNa String eRkayeBldMerobelIeGRkg; */ printf("\n\nString arranged:\n"); for(i=0;i
  • } ]bmafa ebIGkbBal hello abc efgh end lTplelIeGRkg;KW abc efgh hello

    IV. GnuKmn_mYycMnYnsMrab;eRbICamYy String

    1. strcat sMrab;tPab; String

    TMrg;GnuKmn_ char *strcat(char *s1, char *s2); muxgar sMrab;tPab; String s2 BIeRkay String s1ehIyPab;eGayeTA s1. /*------ kmviFI Prog7_1.C ------*/ #include #include #include void main() { char destination[25]; char *blank = " ", *c = "C++", *turbo = "Turbo"; clrscr(); /* cMlg String turbo eGayeTA String destination */ strcpy(destination, turbo); /* bEnm String blank BIeRkay String destination */ strcat(destination, blank); /* bEnm String c BIeRkay String destination */ strcat(destination, c);

    170

  • /* bgaj String destination elIeGRkg; */ printf("%s\n", destination); getch(); }

    lTplbgajelIeGRkg;KW Turbo C++

    2. strchr EsVgrktUrGkSrmYyenAkg String (tYGkSrdMbUgbMput)

    TMrg;GnuKmn_ char *strchar(char *s , int ch) muxgar EsVgrktYGkSr ch dMbUgbMputkg String s. RbsinebIrkeXIjenaH GnuKmn_nwge)aHGasydanrbs;tYGkSr ch kg String s EtebIpyeTAvijGnuKmn_e)aH tMl NULL. /*------ kmvIFI Prog7_2.C ------*/ #include #include #include"conio.h" void main() { char string[25]; char *ptr, c = 'r'; /* c pktYGkSrEdlRtUvEsVgrkkg String */ clrscr(); /* cMlg String constance eGayeTAGefr string */ strcpy(string, "hitr ssdferilsdkf"); /* EsVgrktYGkSr c enAkg String string ebIeXIj enaHPab;Gasydan rbs;tYGkSrkg string enaHeGayeTA Pointer ptr */ ptr = strchr(string, c); if (ptr) /* RbsinebI ptr xusBI NULL enaH)annyfa)anrkeXIj c */ printf("The character %c is at position: %d\n", c, ptr-string); else /* RbsinebIrk c kg string mineXIj */ printf("The character was not found\n"); getch(); }

    171

  • lTplelIeGRkg;KW The character r is at position: 3

    3. strrchr EsVgrktYGkSrmYyEdlenAxageRkaybgs;n String

    TMrg;GnuKmn_ char *strrchr(char *s , int ch); muxgar EsVgrktYGkSr ch EdlsitenAcugeRkaybgs;kg String s. ebI sinrkeXIj enaHGnuKmn_nwge)aHGasydanrbs;tYGkSr ch kg String s EtebIpy eTAvijenaHGnuKmn_nwge)aHtMl NULL. /*------- kmviFI Prog7_3.C --------*/ #include #include #include"conio.h" void main() { char string[25]; char *ptr, c = 'o'; /* c pktYGkSrEdlRtUvEsVgrkkg String */ clrscr(); /* cMlg String constance eGayeTAGefr string */ strcpy(string, "Welcome to cambodia"); /* EsVgrktYGkSr c eRkayeKbMputkg String string ebIeXIj enaHPab; Gasydanrbs;tYGkSrkg string enaHeGayeTA Pointer ptr */ ptr = strrchr(string, c); if (ptr) /* RbsinebI ptr xusBI NULL enaH)annyfa)anrkeXIj c */ printf("The character %c is at position: %d\n", c, ptr-string); else /* RbsinebIrk c kg string mineXIj */ printf("The character was not found\n"); getch(); }

    172

  • lTplelIeGRkg;KW The character o is at position: 15

    4. strcmp eRbobeFob String BIr edayEbgEckGkSrtUc nigGkSrFM TMrg;GnuKmn_ int strcmp(char *s1, char *s2); muxgarrbs;GnuKmn_ KWsMrab;eRbobeFobrvag String cMnYnBIrKW String s1 Ca mYy String s2 edaymankarEbgEckGkSrtUc nigGkSrFM. cUrBinitemIl]TahrN_ xageRkamedIm,IEsVgyl;GMBIrebobeRbIGnuKmn_. eRkayeBleRbIGnuKmn_enH ebIeyIgTTYl)antMlBIGnuKmn_KW + tMl < 0 RbsinebI s1 < s2 + tMl = 0 RbsinebI s1 = s2 + tMl > 0 RbsinebI s1 > s2 /*------- kmviFI Prog7_4.C --------*/ #include #include #include void main() { char *buf1 = "aaa", *buf2 = "bbb", *buf3 = "ccc"; int ptr; clrscr(); /* eRbobeFob String buf2 CamYy buf1 */ ptr = strcmp(buf2, buf1); if (ptr > 0) /* RbsinebI buf2 FMCag buf1 */ printf("buffer 2 is greater than buffer 1\n"); else /* pyeTAvijRbsinebI buf2 tUcCag buf1 */ printf("buffer 2 is less than buffer 1\n"); /* eRbobeFob String buf2 CamYy buf3 */

    173

    ptr = strcmp(buf2, buf3);

  • if (ptr > 0) /* RbsinebI buf2 FMCag buf3 */ printf("buffer 2 is greater than buffer 3\n"); else /* pyeTAvijRbsinebI buf2 tUcCag buf3 */ printf("buffer 2 is less than buffer 3\n"); getch(); } lTplrbs;kmviFIelIeGRkg;KW buffer 2 is greater than buffer 1 buffer 2 is less than buffer 3

    5. strcmpi eRbobeFob String BIr edayKankarEbgEckGkSrtUcFM TMrg;GnuKmn_ int strcmpi(char *s1 , char *s2); GnuKmn_enHkeFVIkardUcKaCamYy strcmp Edr b:uEnvaminEbgEckGkSrtUcFMeT. )annyfavacat;Tuk AbCd kdUcCa ABCD nig kdUcCa abcd Edr.

    6. strcpy cMlg String mYyeGayeTA String mYyeTot TMrg;GnuKmn_ char *strcpy(char *s1, char *s2); muxgarrbs;GnuKmn_KW cMlg String s2 eGayeTA String s1 EteRkayeBl cMlgrYc String s2 minmanERbRbYltMleLIy. eBlenHTinnycas;rbs; String s1 RtUv)anCMnYseTAedayTinnyf Irbs; String s2 edIm,Igayyl; cUrGkRtlb;eTA BinitemIl]TahrN_ Prog7_2.C nig Prog7_3.C nTMBrTI 243 nig 244 xagelI.

    7. strcspn kMNt;TItaMgdMbUgrbs;tYGkSrNamYykg String em TMrg;GnuKmn_ int strcspn(char *s, char *schild);

    174

  • GnuKmn_enHmanmuxgarBinitbNa Character kg String s mgmYy cab;BI k,al String s eTArhUtdl;xagcugn String s EdlkgxNenaH RbsinebIman CYb Character NamYyEdlmanenAkg String schild enaHkarBinitRtUv)anbBab; Pam bnab;mkPab;tMlTItaMgrbs; Character enAeBlva)anCYbenaH eGayeTAeQaH rbs;GnuKmn_. /*------ kmviFI Prog7_5.C -------*/ #include #include #include #include void main() { char *string1 = "1234567890"; char *string2 = "747DC8"; int length; clrscr(); /* BinitemIletItYGkSrrbs; string2 manenAkg string1 EdrbeT? ebImanetIsitenARtg;TItaMgTIb:un ann string1 */ length = strcspn(string1, string2); printf("Character where strings intersect is at position %d\n", length); getch(); } lTplrbs;kmviFIKW Character where strings intersect is at position 3 GnuKmn_e)aHtMl 3 eRBaHeBl Scan string1 dl;TItaMgTI 3 CYbtYelx 4 eday 4 mankg string2 dUecHvakbQb;kar Scan RtwmenaH ehIyke)aHTItaMg enaHeGayeTAGefr length Etmg.

    8. strspn kMNt;TItaMgdMbUgrbs;tYGkSrNamYykg String em EdlK anenAkg String kUn

    TMrg;GnuKmn_ int strspn(char *s, char *schild);

    175

  • GnuKmn_nwgBinit String s mYytYmg RbsinebIkg s vaCYbnUv Character NamYyEdlKanenAkg String schild enaHvanwgbQb;kar Scan BinitPam ehIy ke)aHtMlTItaMgEdlva)an Scan dl;enAeBlbBab;enaH eGayeTAeQaHrbs; GnuKmn_. /*----- kmviFI Prog7_6.C ------*/ #include #include #include int main(void) { char *string1 = "1234567890"; char *string2 = "1234abcd567"; int length; clrscr(); length = strspn(string1, string2); printf("Character where strings differ is at position %d\n", length); getch(); return 0; } lTplelIeGRkg;KW Character where strings differ is at position 7 length TTYl)antMl 7 BIeRBaH enAeBlva Scan dl;TItaMgTI 7 n string1 vak)anCYb 8 Edl 8 enHBMumanenAkg string2 eT dUecHvakbQb;kar Scan RtwmenH ehIye)aHtMlTItaMgeBlbBab;KW 7 enaHeGayeTAeQaHGnuKmn_Etmg. 9. strdup cMlg String mYyeTATukkg Memory fIEdl)anpt;pg; edayGnuKmn_ strdup

    TMrg;GnuKmn_ char *strdup(char *s); GnuKmn_enHmanmuxgarsMrab;pt;pg; Memory edIm,Ipk String EdlcMlg )anBI String s. ebIGnuKmn_Gnuvtkargar)aneCaKCy enaHGnuKmn_nwge)aH Gasy- danrbs;bNM Memory Edlva)anpt;pg;enaH ebIpyeTAvijvanwge)aHtMl NULL.

    176

  • /*----- kmviFI Prog7_7.C ------*/ #include #include #include #include void main() { char *dup_str, *string = "abcde"; clrscr(); /* pt;pg; Memory eGayeTA dup_str edIm,Ipk String EdlcMlgecj BI String string

    */ dup_str = strdup(string); /* bgaj dup_str elIeGRkg; */ printf("%s\n", dup_str); /* bgajGasydanrbs; string */ printf("string address :%d\n",string); /* bgajGasydanrbs; dup_str */ printf("New address :%d\n",dup_str); /* rMedaH Memory Edl dup_str kMBugEteRbIR)as;ecjvij */ free(dup_str); getch(); } lTplrbs;kmviFIKW abcde string address : 170 new address : 1484

    10. stricmp eRbobeFob String BIredayKankarEbgEckGkSrtUcFM

    TMrg;GnuKmn_ int stricmp(char *s1 , char *s2); dMeNIrkarrbs;vadUcKaeTAnwgdMeNIrkarrbs;GnuKmn_ strcmpi Edr cMENk lTplrbs;vavij KWeGaydUcKaCamYylTplrbs;GnuKmn_ strcmp b:uEnGnuKmn_ enHeRbobeFobedayKankarEbgEckGkSrtUcGkSrFMeT.

    177

  • /* kmviFI Prog7_8.C */ #include #include #include void main() { char *buf1 = "BBB", *buf2 = "bbb"; int ptr; clrscr(); /* eRbobeFob String buf1 CamYynwg buf2 */ ptr = stricmp(buf2, buf1); if (ptr > 0) /* RbsinebI buf2 FMCag buf1 */ printf("buffer 2 is greater than buffer 1\n"); if (ptr < 0) /* RbsinebI buf2 tUcCag buf1 */ printf("buffer 2 is less than buffer 1\n"); if (ptr == 0) /* RbsinebI buf2 nig buf1 dUcKa */ printf("buffer 2 equals buffer 1\n"); getch(); } lTplrbs;kmviFIelIeGRkg;KW buffer 2 equals buffer 1

    11. strlen kMNt;RbEvgrbs; String

    TMrg;GnuKmn_ int strlen(char *s); GnuKmn_enHmantYnaTIsMrab;kMNt;cMnYn Character Edlmankg String Etva min)anrab;TaMgsBaabBab; String KW \0 eT.

    178

  • /*------- kmviFI Prog7_9.C -------*/ #include #include #include void main() { char *string = "Borland International"; clrscr(); printf("%d\n", strlen(string)); getch(); } lTplrbs;kmviFIelIeGRkg;KW 21

    12. strlwr brBIGkSrFMeTACaGkSrtUcTaMgGs;

    TMrg;GnuKmn_ char *strlwr(char *s); muxgarrbs;GnuKmn_KW bNatYGkSrFMkg String s RtUv)anbreTACaGkSrtUc vijTaMgGs;. /*------ kmviFI Prog7_10.C --------*/ #include #include #include"conio.h" void main() { char *string = "Borland International"; clrscr(); printf("String prior to strlwr : %s\n", string); /* brBIGkSrFMeTACaGkSrtUcvijTaMgGs; */ strlwr(string); printf("String after strlwr : %s\n", string); getch(); } lTplrbs;kmviFIelIeGRkg;KW String prior to strlwr : Borland International String after strlwr : borland international

    179

  • 13. strncat bEnm n tYGkSrrbs; String source eGayeTA String destination

    TMrg;GnuKmn_ char *strncat(char *s1 , char *s2 , int n); muxgarrbs;GnuKmn_ KWPab;bNa Character cMnYn n tYdMbUgrbs; String s2 eGayeTA String s1. RbsinebI n FMCagRbEvgrbs; s2 enaHvanwgPab;tMl s2 TaMgmUlbnmBIeRkay s1 Etmg. /*------ kmviFI Prog7_11.C ------*/ #include #include #include void main() { char destination[25]; char *source = " States in usa"; clrscr(); /* cMlg String Constance eGayeTA destination */ strcpy(destination, "United"); /* tPab; 7 tYGkSrdMbUgrbs; source eGayeTA destination */ strncat(destination, source, 7); /* bgaj String destination elIeGRkg; */ printf("%s\n", destination); getch(); } lTplrbs;kmviFIelIeGRkg;KW United States 14. strncmp eRbobeFob n tYGkSrdMbUgrbs; String BIr

    TMrg;GnuKmn_ int strncmp(char *s1 , char *s2 , int n);

    180

  • GnuKmn_enHmanmuxgareFVIkareRbobeFob n tYGkSrdMbUgrbs; String s1 CamYynwg n tYGkSrdMbUgrbs; String s2 edaymankarEbgEckGkSrtUcFM. tMl rbs;GnuKmn_EdlnwgTTUl)anKW

    - tMl < 0 RbsinebI n tYdMbUgrbs; s1 tYcCag n tYdMbUgrbs; s2 - tMl = 0 RbsinebI n tYdMbUgrbs; s1 dUcKaCamYy n tYdMbUgrbs; s2 - tMl > 0 RbsinebI n tYdMbUgrbs; s1 FMCag n tYdMbUgrbs; s2

    /*----- kmviFI Prog7_12.C -----*/ #include #include #include void main() { char *buf1 = "aaabbb", *buf2 = "bbbccc", *buf3 = "ccc"; int ptr; clrscr(); /* eRbobeFob 3 tYdMbUgrvag buf2 nig buf1 */ ptr = strncmp(buf2, buf1,3); if (ptr > 0) printf("buffer 2 is greater than buffer 1\n"); else printf("buffer 2 is less than buffer 1\n"); /* eRbobeFob 3 tYdMbUgrvag buf2 nig buf3 */ ptr = strncmp(buf2,buf3,3); if (ptr > 0) printf("buffer 2 is greater than buffer 3\n"); else printf("buffer 2 is less than buffer 3\n"); getch(); } lTplrbs;kmviFIKW buffer 2 is greater than buffer 1 buffer 2 is less than buffer 3

    181

  • 15. strnicmp eRbobeFob n tYdMbUgrbs; String BIredayKankarEbg EckGkSrtUcFM TMrg;GnuKmn_ int strnicmp(char *s1 , char *s2 , int n); eFVIkardUcKaCamYy strncmp Edr EtvaKankarEbgEckGkSrtUc nigGkSrFM eLIy. /*----- kmviFI Prog7_13.C ------*/ #include #include

    #include"conio.h" void main() { char *buf1 = "BBBccc", *buf2 = "bbbccc"; int ptr; clrscr(); ptr = strnicmp(buf2, buf1, 3); if (ptr > 0) printf("buffer 2 is greater than buffer 1\n"); if (ptr < 0) printf("buffer 2 is less than buffer 1\n"); if (ptr == 0) printf("buffer 2 equals buffer 1\n"); getch(); } lTplrbs;kmviFIKW buffer 2 equals buffer 1

    16. strncpy cMlg n tYGkSrBI String source eGayeTA String destination

    TMrg;GnuKmn_ char *strncpy(char *s1 , char *s2 , int n); GnuKmn_enHmanmuxgarcMlg n tYdMbUgrbs; String s2 eGayeTA String s1 edayTinnycas;rbs; S1 RtUv)at;bg;.

    182

  • /*------- kmviFI Prog7_14.C -------*/ #include #include #include void main() { char string[10]; char *str1 = "abcdefghi"; clrscr(); /* cMlg 3 tYdMbUgrbs; str1 eGayeTA string */ strncpy(string, str1, 3); /* dak;sBaabBab; String enAFatuTI 4 rbs; string */ string[3] = '\0'; printf("%s\n", string); getch(); } lTplelIeGRkg;KW abc 17. strnset br n tYGkSrdMbUgrbs; String edaytYGkSrepSgvij TMrg;GnuKmn_ char *strnset(char *s , int c , int n); muxgarrbs;GnuKmn_ strnset KWRtUvCMnYs n tYdMbUgrbs; string s eday Character c vij. /*------- kmviFI Prog7_15.C ---------*/ #include #include #include void main() { char *string = "abcdefghijklmnopqrstuvwxyz"; char letter = 'x'; clrscr(); printf("String before strnset: %s\n", string); /* CMnYs 13 tYdMbUgrbs; string edayGkSr x */ strnset(string, letter, 13); printf("String after strnset: %s\n", string); getch();

    183

  • } lTplrbs;kmviFIKW String before strnset: abcdefghijklmnopqrstuvwxyz String after strnset: xxxxxxxxxxxxxnopqrstuvwxyz 18. strrev RtLb;bRBaas;tYGkSrrbs; String

    TMrg;GnuKmn_ char *strrev(char *s); GnuKmn_enHmanmuxgarbRBaas;bNatYGkSrkg String s BIxagcugmkxag k,alvij. ebI)anGnuvt)ansMerc GnuKmn_nwge)aHGasydanrbs; string Edl)an bRBaas; EtebIpyeTAvijenaHGnuKmn_nwge)aHtMl NULL. /*------ kmviFI Prog7_16.C ------*/ #include #include #include void main() { char *forward = "string"; clrscr(); printf("Before strrev(): %s\n", forward); /* bRBaas; String forward */ strrev(forward); printf("After strrev(): %s\n", forward); getch(); } lTplrbs;kmviFI Before strrev():string After strrev():gnirts

    19. strset CMnYsbNa Character rbs; String mYyeday Character ch vij

    TMrg;GnuKmn_

    184

  • char *strset(char *s,int ch); GnuKmn_enHmanmuxgarbrbNatYGkSrTaMgGs;rbs; String s edaytYGkSr Edlman ASCII pkeday ch vij. /*------ kmviFI Prog7_17.C -------*/ #include #include #include void main() { char string[10] = "123456789"; char symbol = 'c'; clrscr(); printf("Before strset(): %s\n", string); /* brbNatYGkSrrbs; string eday symbol vij */ strset(string, symbol); printf("After strset(): %s\n", string); getch(); } lTplrbs;kmviFI Before strset(): 123456789 After strset(): ccccccccc 20. strstr EsVgrk String mYykg String mYyepSgeTot

    TMrg;GnuKmn_ char *strstr(char *s1,char *s2); GnuKmn_enHnwgEsVgrk String s2 Edl)anelceLIgdMbUgbgs;kg String s1. ebIsinCarkeXIjenaHGnuKmn_nwgGasydanrbs; String s2 EdlkMBugEt enAkg String s1 enaH EtebIpyeTAvij vanwge)aHtMl NULL.

    185

  • /*------ kmviFI Prog7_18.C ------*/ #include #include #include void main() { char *str1 = "Borland International", *str2 = "nation", *ptr; clrscr(); /* EsVgrkemIletIman s2 enAkg s1 EdrbeT? */ ptr = strstr(str1, str2); if(ptr==NULL) printf(\nNot found); else printf("The substring is: %s\n", ptr); getch(); } lTplrbs;kmviFIKW The substring is: national 21. strupr brBIGkSrtUceTAGkSrFM

    TMrg;GnuKmn_ char *strupr(char *s); bNatYGkSrtUckg String s nwgRtUv)anbreTACaGkSrFMvijTaMgGs;. eRkay eBlbrrYc GnuKmn_nwge)aHGasydanrbs; String s. /*----- kmviFI Prog7_19.C ------*/ #include #include #include void main() { char *string = "abcdefghijklmnopqrstuvwxyz", *ptr; clrscr();

    186

  • /* brbNatYGkSrrbs; String string eGayeTACaGkSrFMvij */ ptr = strupr(string); printf("%s\n", ptr); getch(); }

    187

    lTplrbs;kmviFIelIeGRkg;KW ABCDEFGHIJKLMNOPQRSTUVWXYZ

    sMNYr

    1. enAkg String etIsBaa \0KWCaGVI? tMl ASCII KWb:unan? 2. cUrniyayGMBIrTMrg;rkSaTukTinnynkarRbkasxageRkam

    char *str = My String; 3. niyayGMBIPaBxusKankareRbI scanf CamYy gets edIm,IGan String?

    = = = = = * = = = = =