С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/15: Рейтинг темы: голосов - 15, средняя оценка - 4.93
0 / 0 / 0
Регистрация: 01.12.2020
Сообщений: 10
1

C2660:gets_s: функция не принимает 1 аргумент

01.12.2020, 12:10. Показов 2975. Ответов 2

Author24 — интернет-сервис помощи студентам
Когда задача была в таком виде, то все работало:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <conio.h>
#include <Windows.h>
using namespace std;
#pragma warning(disable : 4996)
int main() {
  system("cls");
  SetConsoleCP(1251);
  SetConsoleOutputCP(1251);
 
  char s[80]; // s - стрiчка-джерело
  char* pw;
  char* maxpw[40];
  const char* limits = " ,.;()="; // символи-обмежувачі лексем
  int len; 
  int i = 0;
  int  max = 0;
 
  // Нескiнченний цикл для багаторазового тестування програми:
  for (;;) {
      max = 0;
      len = 0;
    cout << "\n Введiть задану стрiчку s:\n";
    gets_s(s);
    if (!strcmp(s, "*****\0")) break; // умова виходу з циклу
 
   
    pw = strtok(s, limits); // знаходження першої лексеми
    while (pw != NULL) {
      puts(pw);
      len = strlen(pw); 
      if (len > max) {
          max = len;
          maxpw[0] = pw;
      }
      pw = strtok(NULL, limits); // пошук наступної лексеми
    }
        cout << *maxpw;
        cout << "\nНайбільше слово в стрічці - " << max;
  }
  _getch();
  return 0;
}
А как перевела в такой вид то выдаёт ошибку:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <conio.h>
#include <Windows.h>
using namespace std;
#pragma warning(disable : 4996)
 
void Solution(char s[80], char* pw, char* maxpw[40], const char* limits, int len, int i, int max);
 
int main() {
    system("cls");
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
 
    char s[80]; // s - стрiчка-джерело
    char* pw; // слова
    char* maxpw[40]; // масив зберігає кількість букв в найбільшому слові
    const char* limits = " ,.;()=?!-"; // символи-обмежувачі лексем
    int len; // довжина слів
    int i = 0;
    int  max = 0; 
 
    Solution(s, pw, maxpw, limits, len, i, max);
    
    _getch();
    return 0;
}
 
//-----------------------------------------------------------------------------------------------------
//Створення безкінечного циклу для вирішення задачі:
void Solution(char s[80], char* pw, char* maxpw[40], const char* limits, int len, int i, int max) {
    for (;;) {
        max = 0;
        len = 0;
        cout << "\n Введiть задану стрiчку s:\n";
        gets_s(s); //выдаёт ошибку здесь:
        if (!strcmp(s, "*****")) break; // умова виходу з циклу
       
        pw = strtok(s, limits); // знаходження першої лексеми
        while (pw != NULL) {
            len = strlen(pw);
            if (len > max) {
                max = len;
                *(maxpw + 0) = pw;
            }
            pw = strtok(NULL, limits); // пошук наступної лексеми
        }
        cout << *maxpw;
        cout << "\n Найбільше слово в стрічці - " << max << "\n\n";
    }
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.12.2020, 12:10
Ответы с готовыми решениями:

процедуры и функции С++(error C2660: input: функция не принимает 2 аргументов)
ошибка: error C2660: input: функция не принимает 2 аргументов в 25-26 строке #include &lt;cstdlib&gt;...

Что значит ошибка error C2660: strcpy_s: функция не принимает 2 аргументов?
Доброго времени суток! Вёл простенький код из книги Лафоре. Компилятор выдаёт ошибку error C2660:...

Ошибка C2660 std::_Narrow_char_traits<char,int>::assign: функция не принимает 2 аргумента
#include &lt;iostream&gt; using namespace std; int main(int argc, char* argv) { int x = 100;...

Ошибка: "error C2660: getch: функция не принимает 1 аргументов"
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;math.h&gt; void main() {int i, n, x, fact, znak,...

2
6770 / 4564 / 1843
Регистрация: 07.05.2019
Сообщений: 13,726
01.12.2020, 12:18 2
Лучший ответ Сообщение было отмечено ОООАна как решение

Решение

Цитата Сообщение от ОООАна Посмотреть сообщение
gets_s(s); //выдаёт ошибку здесь:
C++
1
gets_s(s, 80);
1
0 / 0 / 0
Регистрация: 01.12.2020
Сообщений: 10
01.12.2020, 12:21  [ТС] 3
Спасибо юольшое, теперь поняла.
0
01.12.2020, 12:21
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.12.2020, 12:21
Помогаю со студенческими работами здесь

Работа с классами С++. error C2660: "Функция не принимает 2 аргумента"
Пытаюсь разобраться с классами. Не компилируется код, естественно ошибки) Так как работаю впервые...

Ошибка при передача аргумента: "C2660: calc: функция не принимает 3 аргументов"
Надо передать из void main() в void user(string login) аргумент login,и далее,не упоминав его в...

Функция не принимает аргумент
const char SDFN = &quot;dhcpcsvc.dll&quot;, SL = &quot;Стерео&quot;, procName = &quot;launcher.exe&quot;; так выглядят константы...

Ошибка: функция не принимает 1 аргумент
Извините за нубский вопрос, но как с этого работающего кода double a,b; char op; cin &gt;&gt; a...

Ошибка: функция не принимает 1 аргумент
Не пойму в чём дело. Ошибку выдаёт на этой строчке - timeinfo = localtime (&amp;now); Вот сам код:...

Error C2660: MessageBoxW: функция не принимает 3 аргументов
c++.cpp(6) : error C2660: MessageBoxW: функция не принимает 3 аргументов #include &lt;windows.h&gt;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru