Содержание
Где огромная разница, которая генерирует ошибку C2360, в следующих двух определениях?
Решение
Первое законно, а второе нет. Иногда допускается пропуск объявления без инициализатора, но никогда без объявления с инициализатором.
int main()
<
setlocale(LC_ALL, "RUS");
int punkt;
printf_s("1.Длина строки
2.Копирование строки
3.Соединение строк
4.Сравнение строк
5.Преобразование строки в нижний регистр
6.Преобразование строки в верхний регистр
7.Первое вхождение символа в строку
8.Вхождение подстроки в строку
9.Удаление символов строки
10.Раздвигание одной строки и помещение в нее другой
11.Удаление четных переворот нечетных слов
12.Выход
");
while (1)
<
scanf_s("%d", &punkt);
switch (punkt)
<
case 1:
char s[256];
printf_s("vvedite stroky
");
gets_s(s);
int k = mystrlen(s);
printf_s("%d
", k); break;
case 2:
char s[200];
char s1[200];
printf_s("vvedite stroky s
");
gets_s(s);
printf_s("vvedite stroky s1
");
gets_s(s1);
char *p = mycopy(s, s1);
puts(p); break;
case 3:
char str1[40], str2[20];
printf_s("vvedite stroky s
");
gets_s(str1);
printf_s("vvedite stroky s1
");
gets_s(str2);
mystrcat(str2, str1);
puts(str2); break;
case 4:
char a[200];
char b[200];
printf_s("vvedite stroky a
");
gets_s(a);
printf_s("vvedite stroky b
");
gets_s(b);
char c = mystrdcmp(a, b);
printf_s("%d
", c);break;
case 5:
char str[200];
printf_s("vvedite sroky
");
gets_s(str);
for (int i = 0; str[i] != ‘