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

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

Войти
Регистрация
Восстановить пароль
 
Werewolf_RU
8 / 8 / 3
Регистрация: 03.02.2014
Сообщений: 205
Завершенные тесты: 1
#1

Лишние символы берущиеся неведомо откуда - C++

24.02.2014, 20:40. Просмотров 332. Ответов 9
Метки нет (Все метки)

Суть в том, что ловлю ответ сервера на свой запрос. По снифферу как запрос, так и ответ нормальные, но в первичном буфере появляется мусор в виде 2-3 символов в конце строки.

C++
1
2
3
4
5
6
char *resvbuf=new char[0];          //буфер
    string dest;
    while(recv(sock, resvbuf, 64,0)>0)
    {
        dest=dest+resvbuf;                      //dest - конечный буфер, куда пишется ответ от сервера
    }

А, и ещё.. Почему-то не производится выход из цикла, когда данные заканчиваются всё виснет на функции recv. И конечный буфер на определённом этапе перестаёт наполняться, подсвечиваясь в контрольных значениях белым, а не привычным оранжевым.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.02.2014, 20:40
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Лишние символы берущиеся неведомо откуда (C++):

Откуда берутся лишние символы при создании массива с помощью оператора new? - C++
Здравствуйте) Наблюдаю странное поведение оператора new. ifstream is; is.open("f.txt"); is.seekg (0, ios::end); ...

Откуда берутся лишние элементы? - C++
String String::operator + (String right){ int len = strlen(this->myString) + strlen(right.myString); cout << len<< endl;// 14 ...

Откуда берутся лишние цифры в double? - C++
У меня значения из примера выше близкие к правильным, но есть косяки - 1)в числе 3.12, откуда то появилась единица в самом последнем...

Лишние символы в файле - C++
Здорова, парни, копирую символы из in.txt и вставляю в out.txt, почему в конец out.txt дописывается 'я'? #include <iostream> ...

Лишние символы на выводе - C++
Задача: в строке заменить плюсы на минусы. Вроде всё выполняется нормально, но за результатом выводятся не нужные мне символы ...

Откуда берутся символы при ошибках? - C++
Иногда,когда программа содержит код с ошибками,начинают выскакивать какие-то колдунские символы,вроде 00FD...,-857... и тд.Откуда они? ...

9
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
24.02.2014, 21:56 #2
Цитата Сообщение от Werewolf_RU Посмотреть сообщение
char *resvbuf=new char[0]; //буфер
Не смущает размер?
0
Croessmah
24.02.2014, 22:00
  #3

Не по теме:

Цитата Сообщение от Tulosba Посмотреть сообщение
Не смущает размер?
большинство думает, что это буфер без размера, то есть саморастягивающийся

0
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
24.02.2014, 22:09 #4
Croessmah, без размера надо и указывать тогда [] Но с нулём-то как можно так думать?!
0
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
24.02.2014, 22:14 #5
Цитата Сообщение от Tulosba Посмотреть сообщение
Но с нулём-то как можно так думать

Не по теме:

Можно, за 5 лет преподавание видел и такое: http://www.cyberforum.ru/cgi-bin/latex.cgi?f(x)=\frac{sin(x)}{s}=in(x), а на вопрос что такое http://www.cyberforum.ru/cgi-bin/latex.cgi?in(x), слышать ответ: "инус икс"...

А это по-божески...
0
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
24.02.2014, 22:32 #6
mustimur, напомнило:
1
Миниатюры
Лишние символы берущиеся неведомо откуда  
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
24.02.2014, 22:38 #7
Цитата Сообщение от Tulosba Посмотреть сообщение
mustimur, напомнило

Не по теме:

Оценил

0
Werewolf_RU
8 / 8 / 3
Регистрация: 03.02.2014
Сообщений: 205
Завершенные тесты: 1
25.02.2014, 17:52  [ТС] #8
Цитата Сообщение от Tulosba Посмотреть сообщение
Не смущает размер?
Не смущает, так как сейчас с таким размером всё прекрасно работает. Неожиданно, не правда ли?
0
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
25.02.2014, 17:54 #9
Цитата Сообщение от Werewolf_RU Посмотреть сообщение
Неожиданно, не правда ли?
Неожиданно будет потом, когда появятся ошибки якобы из ниоткуда.
0
Werewolf_RU
8 / 8 / 3
Регистрация: 03.02.2014
Сообщений: 205
Завершенные тесты: 1
25.02.2014, 17:56  [ТС] #10
Цитата Сообщение от Tulosba Посмотреть сообщение
появятся ошибки якобы из ниоткуда.
То что оно заработало в таком виде стало неожиданностью и для меня, но в таком виде я решил не оставлять. Так как используется это лишь единожды и объём получаемых данных не так уж и велик (один единственный заголовок, даже без страницы) я избавился от цикла и закидываю всё сразу в буфер с размером чуть большим, чем ожидается ответ.
0
25.02.2014, 17:56
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.02.2014, 17:56
Привет! Вот еще темы с ответами:

Выводит лишние символы из файла - C++
Есть вот такой код, и где-то ошибка есть во второй части (считывания из файла), ближе к концу при выводе расшифрованной строки. Почему-то с...

Почему выводит лишние символы? - C++
char * buildstr(char c, int n); int main() { setlocale(LC_ALL, "russian"); // русифицировать int times = 0; char ch; ...

Откуда в конце строки появляются дополнительные символы? - C++
#include "stdafx.h" #include "math.h" #include "iostream" #include "string" #include "conio.h" #include "cctype" #include...

Лишние символы при записи в файл - C++
void Add_department::OnBnClickedOk() { char seps = ":"; char *token; char* file_name = "D:\\department.txt"; char...


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

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

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