5В011100-«Информатика» мамандығына арналған «Есеп шығару әдістемесі»



бет16/37
Дата04.04.2023
өлшемі1,37 Mb.
#79347
1   ...   12   13   14   15   16   17   18   19   ...   37
1.2 Жолдарды көшіру
С кітапханасында жолдарды көшірудің екі функциясы бар. Спецификалық техниканың әсерінен жолдармен жұмысты С-да бір жолды екіншісіне оңай меншіктеуге болмайды, бірақ басқа бағдарламалау тілдерінде бұлай жасауға жол берілген. Міндетті түрде орындалушы жолдың өзі алып отырған орынан басқа орынға көшіруді орындау қажет, оның ішінде көшірудің жолы орналасқан жерге жолдарды көшіру функциялары strcpy( ) және strncpy() дан тұрады. Екеуі де string.h тақырып файлында хабарланған, оны міндетті түрде олардың қолданылуы үшін қосу қажет.
1.2.1 Strcpy( ) функциясы
Strcpy( ) кітапханалық функциясы берілген жадыға бүтін бір жолды көшіреді. Оның протипі: char * strcpy(char* destinution, const char* source);
Анықтама бойынша, strcpy( ) функциясы жолдарды көшіруді орындайды және ол source адресінде орындалады (оған қоса аяқтаушы 0-дік символмен)б сілтеуіште destination адресінен басталады. Strcpy( ) функциясын шақырмайтын бұрын жаңа жол үшін шартты түрде жадыны ерекшелеу керек. Жаңа сілтенген адрес бойынша жеткілікті жады бар немесе жоқ екендігін функция өздігінен тексере алмайды. Егер жады реттелуі орындалмаса, онда функция strlen(source) жаңа ақпаратқа әсер етеді. Оның ішінде destination сілтенген адрестен бастайды. Мұндай жағдайда күтпеген қателіктер шығуы мүмкін. Strcpy( ) функциясының қолданылуы 2-ші листингте айқын көрсетілген.
1.2.2 Strncpy( ) функциясы
Strncpy( ) функциясы strcpy( ) функциясымен белгіленуі жөнінен үйлесімді.Бір еске сақтар жағдай бар, оның көмегімен белгілі бір мөлшерде символдар көшіріледі. Ол төмендегідей прототипке ие:
Char*strncpy(char*destination, const char* source, size_ t n);
Source және destination аргументтері бастапқы және соңғы жолдарға сілтейді. Функция destination-дағы source аргументтерінен n-нен астам символдарды көшіреді. Егер source жолы n символдан қысқа болса, онда destination да n-ге тең болуы,көшірілуі үшін, оған жеткілікті мөлшерде нөлдік символдар қосылады. Егер source жолы n символынан ұзынырақ болса, онда destination-ға аяқталушы нөлдік символ қосылмайды. Функция destination сілтеуішін кері қайтарады. Strncpy ( ) функциясының қолданылуы 3-ші листингте көрсетілген.


Достарыңызбен бөлісу:
1   ...   12   13   14   15   16   17   18   19   ...   37




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет