#include <iostream>
#include <cstring>
using namespace std;
int main()
{
setlocale(0, "");
char strHello[256] = "hello";
char strWorld[256] = " world";
strcat (strHello, strWorld);//я так же обратил внимание и на другие команды(strcpy,strcmp);
cout << strHello << endl;
return 0;
}
В Visual C++ рекомендуется использовать функцию strcat_s
, и другие функции с _s
на конце. Она принимает размер буфера, по этому при ее использовании не может произойти переполнение буфера.
char strHello[256] = "hello";
char strWorld[256] = " world";
strcat_s (strHello, sizeof(strHello), strWorld);
// или, для массивов (не указателей) можно не передавать размер:
strcat_s (strHello, strWorld);
Предполагаю, что ошибка всё же имеет номер C4996 (а не C4999). Возникает по причине того, что MS считает функцию strcat
небезопасной (в принципе не безосновательно). Однако, приводить к ошибке (не предупреждению) компиляции это по моему мнению не должно. Тем не менее, чтобы упомянутой ошибки не возникало, достаточно добавить следующую строку в начало исходника:
#define _CRT_SECURE_NO_WARNINGS
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Нашел задачу на двумерный массив и не понятно как код писать, сам недавно начал учит с++
Найти сумму положительных элементов массива A = {a [i]}, что удовлетворяют условию: b <= a [i] <= dНаписал код но не могу понять почему оно не работает...
Как сделать запуск программы из CLion в стандартную консоль OS, а не в встроенную в CLion?
Нужно сделать общим для нескольких процессов массив структурРешил сделать так: один из процессов выделяет общий блок памяти с помощью shmget,...