Strcpy

Strcpy

strcpy

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

Содержание

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

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

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

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

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

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

#include <string.h>
#include <stdio.h>                       /* для printf() */
 
 
int main()
{
   char *str = "образец строки";
   char  buf[32];                        // буфер размером больше строки
 
   memset(buf, 0, sizeof(buf));          // очистка буфера для вывода
 
   printf("строка: \"%s\"\n\n", str);
   printf("буфер перед копированием: \"%s\"\n", buf);
 
   strcpy(buf, str);
 
   printf("буфер после копирования:  \"%s\"\n", buf);
 
   return 0;
}

Вывод:

строка: "образец строки"

буфер перед копированием: ""
буфер после копирования:  "образец строки"

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

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

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

Внешние ссылки

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

Wikimedia Foundation. 2010.

Игры ⚽ Нужен реферат?

Полезное


Смотреть что такое "Strcpy" в других словарях:

  • strcpy — strcpy  функция стандартной библиотеки языка программирования Си, для копирования нуль терминированной строки (включая нуль терминатор) в заданный буфер . Содержание 1 Прототип функции 2 Возвращаемое значение …   Википедия

  • Strcpy — The C programming language offers a library function called strcpy, defined in the string.h header file, that allows null terminated memory blocks to be copied from one location to another. Since strings in C are not first class data types and… …   Wikipedia

  • Strcpy — Función incluida dentro del archivo de cabecera de constantes string.h del lenguaje de programación C. Contenido 1 Prototipo 2 Parámetros 3 Descripción 4 Ejemplo …   Wikipedia Español

  • Buffer Overflow — Dépassement de tampon En informatique, un dépassement de tampon ou débordement de tampon (en anglais, buffer overflow) est un bogue causé par un processus qui, lors de l écriture dans un tampon, écrit à l extérieur de l espace alloué au tampon,… …   Wikipédia en Français

  • Buffer overflow — Dépassement de tampon En informatique, un dépassement de tampon ou débordement de tampon (en anglais, buffer overflow) est un bogue causé par un processus qui, lors de l écriture dans un tampon, écrit à l extérieur de l espace alloué au tampon,… …   Wikipédia en Français

  • Depassement de tampon — Dépassement de tampon En informatique, un dépassement de tampon ou débordement de tampon (en anglais, buffer overflow) est un bogue causé par un processus qui, lors de l écriture dans un tampon, écrit à l extérieur de l espace alloué au tampon,… …   Wikipédia en Français

  • Débordement de buffer — Dépassement de tampon En informatique, un dépassement de tampon ou débordement de tampon (en anglais, buffer overflow) est un bogue causé par un processus qui, lors de l écriture dans un tampon, écrit à l extérieur de l espace alloué au tampon,… …   Wikipédia en Français

  • Débordement de tampon — Dépassement de tampon En informatique, un dépassement de tampon ou débordement de tampon (en anglais, buffer overflow) est un bogue causé par un processus qui, lors de l écriture dans un tampon, écrit à l extérieur de l espace alloué au tampon,… …   Wikipédia en Français

  • Débordements de buffer — Dépassement de tampon En informatique, un dépassement de tampon ou débordement de tampon (en anglais, buffer overflow) est un bogue causé par un processus qui, lors de l écriture dans un tampon, écrit à l extérieur de l espace alloué au tampon,… …   Wikipédia en Français

  • Dépassement De Tampon — En informatique, un dépassement de tampon ou débordement de tampon (en anglais, buffer overflow) est un bogue causé par un processus qui, lors de l écriture dans un tampon, écrit à l extérieur de l espace alloué au tampon, écrasant ainsi des… …   Wikipédia en Français


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»