0

征服できないと思われるさらに別のセグメンテーション違反で戻ってきました。

私はそれが何であるかを正確に理解しました。それは char* 文字列行にあるものです。私はそれを使用してバイトを分割し、学校の課題用にこの pdf ファイルを取得します。

どんな助けでも大歓迎です!

void* consumer(void *temp)
{
int* stuff = reinterpret_cast<int*>(temp);
int x = *stuff;
char* string[];
stringstream stream1;
stringstream stream2;
int temp1=0;
int temp2=0;
int sent1=0;
int sent2=0;
ofstream fout;

strcpy(string,request); //SEGFAULT(11) ON THIS LINE, WHEN CALLING "string"
strcat(string,"Byte Range: ");
...

完全なコードはここにあります。https://www.dropbox.com/sh/dt90ot3z4v5nruy/1H9a5Cyb5A mgetweb.h および mgetweb.cpp

4

1 に答える 1

1

new文字列ポインタ用のメモリがまだありません。アクセスする動作は未定義です。

//  char* string[]; I guess that's not what you intent to do, declaring an array of pointers?

char* string = new char[BIG_ENOUGH_SIZE];
strcpy(string, request);
于 2012-11-28T01:06:47.460 に答える