Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > Переполнение стэка


Автор: Sergio 3.9.2008, 20:36
Всем привет. Переполнение стэка при вот таком коде:
Код

bool ReadBufferFromFile(HANDLE hFile, char bufferFile[4096])
{
    DWORD bytesOfRead;
    ReadFile(hFile, &bufferFile, 4095, &bytesOfRead, NULL);

    return true;
}
...

char buff[4096];
ReadBufferFromFile(hFile, bufferFile)

В чём собственно проблема? Поскольку про "\0" я не забыл.

Автор: Mayk 3.9.2008, 20:50
Цитата(Sergio @  4.9.2008,  00:36 Найти цитируемый пост)

В чём собственно проблема?


Цитата(Sergio @  4.9.2008,  00:36 Найти цитируемый пост)
&bufferFile,

здесь должен быть &bufferFile[0] или bufferFile.

Автор: NebelDT 30.9.2008, 20:43
У меня вот такой примерчик!
Код

  bufferfile.Link(filename.local8Bit(),ID3TT_ID3V2);
          setTagContentv2(&bufferfile,&v2tag);
          //if we have a picture, write it to file
          if (!v2tag.cdcover.isNull())
            setPicture(&bufferfile,v2tag.cdcover);
          else
            removePicture(&bufferfile);
          bufferfile.Update(ID3TT_ID3V2);
          bufferfile.Clear();
          if (tagversion==2&&workingfile.HasV1Tag())
            {
              //strip unwanted id3v1-tag
              bufferfile.Link(filename.local8Bit(),ID3TT_ID3V1);
              bufferfile.Strip(ID3TT_ID3V1);
            }


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)