1. Mis on C-keele funktsioon? Selle põhifunktsioonid
C-keeles on funktsioon koodiplokk, mis täidab kindlat ülesannet ning aitab vältida koodi kordamist ja parandada programmi struktuuri. Funktsioonide korrektne kasutamine suurendab programmi taaskasutatavust ja aitab vähendada vigu. Selles artiklis jagame C-keeles sageli kasutatavad funktsioonid kategooriatesse ning selgitame nende rolli ja kasutusviisi.
2. Mis on C-keele standardraamatukogu? Ülevaade ja kasutamine
C-keele standardraamatukogu ülevaade
C-keele standardraamatukogu koosneb funktsioonidest, mis võimaldavad programmeerijal tõhusalt erinevaid toiminguid teha. Näiteks stringide töötlus, sisendi ja väljundi haldamine, mälu juhtimine ja matemaatilised operatsioonid – paljud neist igapäevastest toimingutest on standardraamatukogus juba olemas. Standardraamatukogu kasutamine säästab vajadust ise funktsioone kirjutada ning pakub usaldusväärseid lahendusi kiiresti.
Kuidas kasutada standardraamatukogu
Standardraamatukogu funktsioonide kasutamiseks tuleb lisada vastav päisefail. Päisefail sisaldab funktsioonide definitsioone ja prototüüpe ning kui see on programmi algusesse lisatud, saab vajalikke funktsioone vabalt kasutada.
#include <stdio.h> // standardne sisend/väljund
#include <stdlib.h> // mäluhaldus ja protsesside juhtimine
#include <string.h> // stringide töötlus
3. Funktsioonide nimekiri kategooriate kaupa
Stringide töötlusfunktsioonid
C-keeles pakub standardraamatukogu palju stringide töötlusfunktsioone. Allpool mõned tuntumad näited.
strcpy
Kopeerib lähte-stringi määratud puhvri. Kasutamisel veendu, et sihtpuhvri suurus oleks piisav.
#include <stdio.h>
#include <string.h>
int main() {
char source[] = "Hello, World!";
char destination[50];
strcpy(destination, source);
printf("Kopeeritud string: %s
", destination);
return 0;
}
strcat
Liidab kaks stringi. Veendu, et sihtpuhvri suurus oleks piisav.
#include <stdio.h>
#include <string.h>
int main() {
char str1[50] = "Hello";
char str2[] = ", World!";
strcat(str1, str2);
printf("Liidetud string: %s
", str1);
return 0;
}
strlen
Tagastab stringi pikkuse. Lõpetavat nullmärki ei arvestata.
#include <stdio.h>
#include <string.h>
int main() {
char str[] = "Hello, World!";
size_t length = strlen(str);
printf("Stringi pikkus: %zu
", length);
return 0;
}
Sisendi ja väljundi funktsioonid
C-keeles on mitmeid funktsioone standardse sisendi ja väljundi haldamiseks.
printf
Vormindatud teksti väljund. Väga kasulik debugimisel ja tulemuste kuvamisel.
#include <stdio.h>
int main() {
printf("Hello, World!
");
return 0;
}
scanf
Loeb väärtusi standardist sisendist. Saab määrata sisendi formaadi, võimaldades erinevate andmetüüpide lugemist.
#include <stdio.h>
int main() {
int number;
printf("Sisesta number: ");
scanf("%d", &number);
printf("Sisestatud number: %d
", number);
return 0;
}
fgets
Loeb stringi standardist sisendist. Turvalisem kuiscanf
, aitab vältida puhvriväliseid vigu.
#include <stdio.h>
int main() {
char buffer[100];
printf("Sisesta string: ");
fgets(buffer, sizeof(buffer), stdin);
printf("Sisestatud string: %s
", buffer);
return 0;
}
Mäluhalduse funktsioonid
Dünaamiliseks mäluhalduseks kasutatakse C-keeles sageli järgmisi funktsioone.
malloc
Broneerib dünaamiliselt määratud suuruses mälu. Edu korral tagastab mäluaadressi, ebaõnnestumiselNULL
.
#include <stdio.h>
#include <stdlib.h>
int *ptr;
ptr = (int *)malloc(5 * sizeof(int));
if (ptr == NULL) {
printf("Mälu eraldamine ebaõnnestus.
");
return 1;
}
printf("Mälu eraldati edukalt.
");
free(ptr); // Oluline on mälu kasutamise järel vabastada
return 0;
free
Vabastab dünaamiliselt eraldatud mälu. Kasuta alati peale mälu kasutamist, et vältida mäluleke.
free(ptr);
4. Algajatele vajalikud põhilised funktsioonid
C-keelt alustavale õppijale on oluline esmalt selgeks saada sisendi ja väljundi ning põhifunktsioonid stringide töötluseks.
printf
jascanf
: Põhilised sisendi ja väljundi funktsioonid, mille mõistmine on hädavajalik.fgets
: Ohutu stringi sisendi funktsioon.strcpy
jastrlen
: Stringi kopeerimine ja pikkuse leidmine.malloc
jafree
: Dünaamilise mäluhalduse põhilised funktsioonid.
5. Kokkuvõte
C-keele funktsioonid muudavad programmi tõhusamaks ja loetavamaks. Standardraamatukogu kasutamine võimaldab ka keerulised toimingud lihtsalt lahendada, mistõttu on need ka algajale väga väärtuslikud. Iga funktsiooni rolli ja kasutusviisi mõistmine ning korrektne rakendamine viib edukate programmide loomiseni.
Järgmisel korral tutvustame teisi tihti kasutatavaid funktsioone ning nende praktilisi näiteid.