С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Vonka
1 / 1 / 0
Регистрация: 13.09.2013
Сообщений: 90
#1

Ошибка в программе (buffer is too small) - C++

15.12.2013, 01:08. Просмотров 337. Ответов 0
Метки нет (Все метки)

При написании нескольких слов, программа работает, но если написать чуть больше выдает эту ошибку "buffer is too small". Как ее исправить?
И можно ли добавить в этот код: вывод количества букв максимального слова и вывод нескольких слов если они одинакового размера?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
void f (char str[])    
{
    char smax[1000];
    int max=0, a;
    char s[1000];
    for (int i=0; i<strlen(str); i++)
    {   
        a = 0;
        strcpy (s, "");
        for (int j=i, k=0; str[j] != ' ' && str[j] != '\0'; j++, k++)
        {
            a++;
            s[k] = str[j];
        }
        s[a]='\0';
        if (a>max)
        {
            max=a;  
            strcpy (smax, s);
        }
    }
    printf ("\nСамое длинное слово: %s\n", smax);
}
C++
1
2
3
4
5
6
    printf ("\nЗадание: Ввести строку, найти в функции в ней слово максимальной длины.\n");
            fflush(stdin);
            printf("\nВведите строку: \n");
            gets_s(s1);
            f(s1);  
            break;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.12.2013, 01:08
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ошибка в программе (buffer is too small) (C++):

В цикле после 100 итерации ошибка исполнения "Buffer too small" - C++
код такой: for (int i = 1; i &lt;= 256; i++) { cout &lt;&lt; GetVal(i) &lt;&lt; &quot;,&quot;; } GetVal(i) это string. на 100 итерации падает с ...

Где ошибка: ClearBuffer(Buffer,sizeof(Buffer)); WRITE(Buffer,test,20,ALL); - C++
Cho ne pravilno v sledyushem code: #define ALL; ........ ClearBuffer(Buffer,sizeof(Buffer)); WRITE(Buffer,test,20,ALL); ...

Strcpy_s выдает ошибку buffer is too small - C++
Вот у меня есть пример простого кода, но почем-то в месте, где вызывается функция копирования, вылезает ошибка. Вроде все делаю правильно: ...

При вызове конструктора ошибка: L "Buffer is too small" & & 0 - C++
Привет. При вызове конструктора вылетает эта ошибка. Student(char *n, char *s, char *p, int y, char *g) { name = new char;...

Ошибка : " L Buffer is too small & & 0" - C++
Здравствуйте. У меня возникла странная проблема: в недалеком прошлом рабочая программа начала выдавать ошибку: &quot; L Buffer is too small &amp; &amp;...

Strcpy_s выдает ошибку L Buffer is too small & & 0 - C++
strcpy_s выдает ошибку L Buffer is too small &amp; &amp; 0 22 строка #include &lt;iostream&gt; #include &lt;clocale&gt; #include &lt;ctime&gt; int main () ...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.12.2013, 01:08
Привет! Вот еще темы с ответами:

Expression: ("buffer too small", 0) - C++
Скажите в чем проблема. Если объявить как char w_str, все работает. Как записывать строку в бинарный файл с помощью указателя? программа...

Expression: (L"Buffer is too small" && 0) - C++
Где ошибка и как её исправить? #include &lt;iostream&gt; #include &lt;string&gt; using namespace std; const int Size = 5; struct...

Ошибка: CRT detected that the application wrote to memory after end of heap buffer - C++
После заполнения структуры, из консоли, появляется ошибка об утечке памяти. Объясните, пожалуйста, где я допустил оплошность? ...

Fwrite (buffer , sizeof(char), sizeof(buffer), pFile) - C++
как записать часть массива чаров? допустим у нас arr; мне надо записать с позиции массива 500 до 600, 100 байтов как записать эту...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.