Sa artikulong ito, ipapaliwanag namin kung anong mga string ang nasa C, kung paano idineklara ang mga ito, at kung paano ipatupad ang mga ito sa C programming.
Ano ang mga String sa C Programming?
Ang mga string ay ang mga one-dimensional na array na winakasan ng null \0 karakter. Ginagamit ang mga ito para sa pag-iimbak ng mga character at teksto at ang bawat karakter sa string ay sumasakop ng isang byte ng memorya. Hindi tulad ng iba pang mga programming language, ang C ay walang pangalan ng uri ng data bilang string, sa halip na ito, iniimbak mo ang data sa uri ng char.
Paano Magpahayag ng Mga String sa C Programming?
Sa C programming, maaari kang magdeklara ng isang string gamit ang mga sumusunod na pamamaraan:
Maaari kang magtalaga ng string na may paunang natukoy na laki. Halimbawa, ang isang string na may 8 character na limitasyon sa laki ay dapat ideklara bilang:
char pagsusulit [ 8 ] = 'maligayang pagdating' ;
Ang isa pang paraan upang magtalaga ng isang string sa C ay walang pagtukoy sa laki ng array:
char pagsusulit [ ] = 'maligayang pagdating' ;
Maaari ka ring magtalaga ng string gamit ang isang character array na may tinukoy na laki:
char pagsusulit [ 8 ] = { 'SA' , 'Ito ay' , 'l' , 'c' , 'O' , 'ako' , 'Ito ay' , ' \0 ' } ;O maaari kang magtalaga ng isang string sa isang array ng character sa pamamagitan ng pagsisimula nito ng character sa pamamagitan ng character na walang tinukoy na laki:
char pagsusulit [ ] = { 'SA' , 'Ito ay' , 'l' , 'c' , 'O' , 'ako' , 'Ito ay' , ' \0 ' } ;
Ang null character '\0' kumakatawan sa dulo ng isang string. Upang matukoy kung saan nagtatapos ang string, mahalagang idagdag ang null na character sa dulo ng bawat isa.
Ang representasyon ng memorya ng string sa itaas ay ang sumusunod:
Index | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
Variable | SA | Ito ay | l | c | O | m | Ito ay | \0 |
Sa C, ang null na character ay ginagamit upang matukoy kung saan nagtatapos ang string. Kung wala ang null na character, ang mga function na ito ay patuloy na magpoproseso ng memorya sa kabila ng dulo ng string, na posibleng humahantong sa hindi inaasahang pag-uugali ng code.
Ang sumusunod ay isang kumpletong C programming code para sa pag-print ng isang string.
#includeint pangunahing ( ) {
char pagsusulit [ 8 ] = { 'SA' , 'Ito ay' , 'l' , 'c' , 'O' , 'ako' , 'Ito ay' , ' \0 ' } ;
printf ( 'Ang output ay: %s \n ' , pagsusulit ) ;
bumalik 0 ;
}
Ang programa sa itaas ay nagdedeklara ng isang character array test na may sukat na 8 at sinisimulan ito sa mga character 'W', 'e', 'l', 'c', 'o', 'm', 'e' , at '\0' . Pagkatapos ay ginagamit nito ang printf() function upang i-print ang string na nakaimbak sa pagsubok.
Output
Kunin ang Input ng String Mula sa User sa C Programming
Maaari ka ring kumuha ng input string mula sa isang user gamit ang scanf() function at para doon, kailangan mong tukuyin ang laki ng string array. Ang sumusunod ay isang halimbawang code para sa pagkuha ng input mula sa user:
#includeint pangunahing ( )
{
char pangalan [ 10 ] ;
printf ( 'Ilagay ang pangalan:' ) ;
scanf ( '%s' , pangalan ) ;
printf ( 'Ang inilagay na pangalan ay: %s.' , pangalan ) ;
bumalik 0 ;
}
Ang program sa itaas ay nag-uudyok sa user na maglagay ng pangalan, binabasa ito mula sa user gamit ang scanf() function, at iniimbak ito sa pangalan ng character array. Pagkatapos ay ginagamit nito ang printf() function upang i-print ang ipinasok na pangalan.
Output
Magbasa ng String o Linya ng Teksto sa C Programming
Maaari mong gamitin ang fgets() function na basahin ang mga string dahil ito ay ginagamit upang basahin ang isang linya ng teksto mula sa tinukoy na input stream at iimbak ito sa isang array ng character. Ang nakasulat na code sa ibaba ay isang halimbawa ng ganitong kaso:
#includeint pangunahing ( ) {
char linya [ limampu ] ;
printf ( 'Magpasok ng isang linya ng text: ' ) ;
fgets ( linya , sukat ng ( linya ) , stdin ) ;
printf ( 'Pumasok ka: %s' , linya ) ;
bumalik 0 ;
}
Ang C program sa itaas ay gumagamit ng fgets() function na basahin ang isang linya ng text na ipinasok ng user mula sa karaniwang input at iimbak ito sa isang character array na pinangalanang linya. Pagkatapos, ipi-print nito ang ipinasok na linya ng teksto gamit ang printf() function.
Output
Mga Karaniwang Ginagamit na String Function
Ang mga string sa C programming ay sumusuporta sa iba't ibang mga function na maaaring magamit sa mga programa upang magsagawa ng iba't ibang mga aksyon. Ang ilan sa mga function na sinusuportahan ng isang string sa C ay binanggit sa ibaba:
Pangalan ng Function | Layunin ng Function |
strcat(a1,a2); | Idinaragdag ang mga nilalaman ng string a2 sa dulo ng string a1. Pagkatapos ng operasyon, ang resultang string ay maiimbak sa a1. |
strcpy(a1,a2); | Kinokopya ng function na ito ang mga nilalaman ng string a2 sa string a1. Pagkatapos ng operasyon, ang a1 ay maglalaman ng eksaktong kopya ng a2, kasama ang pagwawakas na null character. |
strlen(a1); | Ibinabalik ang haba ng string a1, ibig sabihin, ang kabuuang bilang ng mga character na matatagpuan sa string bago ang huling pagwawakas o null na character. |
strchr(a1,ch1); | Inililipat ng function na ito ang pointer sa unang paglitaw ng character na ch1 sa string a1. Ang function na ito ay nagbabalik ng null pointer kung ang ch1 ay hindi matatagpuan sa string a1. |
Tandaan: Nagbibigay ang C ng karaniwang aklatan na tinatawag
Konklusyon
Ang string ay ang koleksyon ng linear sequence sa mga C program. Ang bawat karakter ay nag-iimbak ng isang byte at kinakatawan ng mga double quote mark. Ang C ay nagbibigay ng karaniwang aklatan