Есть такой код:
#include "stdafx.h"
#include <iostream>
#include <windows.h>
#include <string>
using namespace std;
int main()
{
char str[101];
char tmp[101];
char sym[3];
int n;
cin >> n;
cin.ignore(100, '\n');
gets_s(sym, 4);
int k;
int max = 0;
int lensym = strlen(sym);
for (int i = 0; i < n; i++) {
gets_s(str, 102);
int lenstr = strlen(str);
k = 0;
for (int j = 0; j < lenstr-1; j++)
for (int l = 0; l < lensym-1; l++) if (str[j] == sym[l]) k++;
if (k > max) {
max = k;
strcpy_s(tmp, str);
}
}
puts(tmp);
system("pause");
return 0;
}
После вывода ответа выдаёт ошибку:
Run-Time Check Failure #2 - Stack around the variable 'str' was corrupted.
Где проблема со строкой str?
Вы зачем обманываете систему, и при вызове gets_s() говорите ей, что у Вас массивы на 1 символ больше их реального размера?
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости