WikiSort.ru - Не сортированное

ПОИСК ПО САЙТУ | о проекте

strcpy — функция стандартной библиотеки языка программирования Си, для копирования нуль-терминированной строки (включая нуль-терминатор) в заданный буфер .

Прототип функции

Прототип, описанный в заголовочном файле string.h:

char *strcpy (char *dst, const char *src);

Возвращаемое значение

Функция возвращает значение dst.

Пример использования

#include <string.h>
#include <stdio.h>                       /* для printf() */

int main()
{
   char *str = "string example";
   char  buf[32];                        // буфер размером больше строки

   buf[0] = '\0';                        // помечаем буфер как пустую строку, либо char buf[32] = "";

   printf("string: \"%s\"\n", str);
   printf("buffer before copying: \"%s\"\n", buf);

   strcpy(buf, str);

   printf("buffer after copying: \"%s\"\n", buf);

   return 0;
}

Вывод:

string: "string example"
buffer before copying: ""
buffer after copying: "string example"

Безопасность

Поскольку функция не проверяет длину строки и размер буфера, она не должна использоваться для работы с данными, размер которых неизвестен, во избежание переполнения буфера dst.

Вместо strcpy рекомендуется использовать стандартную функцию strncpy (добавляя нуль-терминатор при необходимости!) или не входящие в стандарт функции strlcpy или strncpy_s.

Ссылки

  • strcpy(1)  (англ.) — Мануал функции strcpy на сайте OpenBSD
  • C++ reference: cstring: strcpy  (англ.) — описание strcpy с примером.
  • strcpy()  (рус.) — реализация функции strcpy.

Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".

Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.

Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .




Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.ru внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2024
WikiSort.ru - проект по пересортировке и дополнению контента Википедии