1 / 13

Stringovi (niske)

Autori : Igor Janosević, Aleksandar Milovanović, Mateja Mitić Odeljenje: E32. Stringovi (niske). Stringovi (niske). String je jednodimenzionalni niz tipa char . Da bi se označio kraj tog niza, dopisuje se NULL znak: '‘ koji je sastavni deo stringa.

ceana
Download Presentation

Stringovi (niske)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Autori: Igor Janosević, Aleksandar Milovanović, Mateja Mitić Odeljenje: E32 Stringovi (niske)

  2. Stringovi (niske) • String je jednodimenzionalni niz tipa char. • Da bi se označio kraj tog niza, dopisuje se NULL znak: '\0‘koji je sastavni deo stringa. • Rad sa stringovima podrazumeva poseban način korišćenja niza znakova. • Zbog završnog znaka potreban je memorijski prostor za jedan veći od broja znakova između navodnika.

  3. String konstante • Za C kompajler string konstanta je svaki niz znakova između navodnika. • Znaci između navodnika zajedno sa završnim znakom se registruju u susednim memorijskim lokacijama. • Zbog prisustva završnog znaka string konstanta "C"nije jednaka znakovnoj konsranti 'C', jer je "C" niz od dva znaka: 'C' i'\0'. • Prazna string konstanta  " "se sastoji samo od završnog znaka.

  4. Inicijajizacija stringova • Stringovi se mogu inicijalizovati korišćenjem string konstanti. • Na primer char s[]=“JABUKA"; inicijalizuje statički niz s datom string konstantom. • Ovaj način inicijalizacije predstavlja skraćeni oblik inicijalizacije niza char s[]={‘J',‘A',' B',‘U' ,‘K' , ‘A' '\0'}; • Ako bi se u inicijalizaciji izostavio završni znak to više ne bi bio string već samo niz znakova. • Kao i kod drugih nizova, ime s predstavlja pokazivač na nulti element niza.

  5. Učitavanje stringova • Pri učitavanju stringova treba voditi računa o dve stvari: kako rezervisati memoriju za čuvanje stringa i kako primeniti funkciju za učitavanje stringa. • Na početku rada potrebno je odrediti maksimalnu dužinu stringa koji će se učitavati da bi kompajler dodelio traženi memorijski prostor. • Na primer, deklaracijom char ime[101];uvodi se niz ime od najviše sto jednog elementa.  • Učitavanje se može realizovati pomoću dve funkcije iz biblioteke stdio.h, a to su scanf() i gets()ali se funkcija gets()mnogo češće koristi od funkcije scanf().

  6. Primer učitavanja stringa

  7. Ispis stringova • Za ispis stringova se koriste dve funkcije iz biblioteke stdio.h a to su puts() i printf(). • Funkcija puts() ispisuje samo stringove, a printf() može ispisivati mešovite podatke. • Dok se pri ispisu stringa sa puts() automatski prelazi na novu liniju pri korišćenju printf() to se mora naznačiti sa '\n'. • Na primer: printf("%s\n" ,string); ima isti efekat kao i puts(string);

  8. Primer ispisa stringa

  9. <string.h> • Za laksu manipulaciju stringova, koriste se funkcije iz biblioteke string.h a neke od najvažnijih funkcija su: • Funkcija strlen() koja vraća broj znakova nekog stringa bez završnog NULL znaka • Funkcije strstr()istrchr() se koriste za nalaženje znakova i reči unutar većeg stringa. • Funkcija strcat() povezuje dva stringa tako što prvom ukloni završni znak i na njega doda drugi string. • Funkcija strcmp() se koristi za poređenje dva stringa. • Funkcija strcpy() se koristi za kopiranje sadržaja stringa. • Funkcijaatoi() pretvara ASCII string u ceo broj.

  10. Primer korišćenja funkcijestrcpy() Izvršavanjem programa ispisuje se: HaloZdravo

  11. Primer korišćenja funkcijeatoi() Izvršavanjem programa ispisuje se: 319681 6-13035 Dobija se pogrešan rezultat zbog prekoračenja intervala celih brojeva.

  12. Primer korišćenja funkcijestrstr() Izvršavanjem programa ispisuje se: gramiranje

  13. Literatura • Računari i Programiranje III (Link) • Programski jezik C, Stringovi (Link) • Programski jezik C (Link)

More Related