[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Basic, but what the hell am I doing wrong here?

I'm working on a fairly large program for a class, and now every time I
run it, it segfaults.

I've secluded the part that seems to cause the problems, and wrote a
small file called test.cc, which contains a minimal implementation fo
the code that brings up the segfault. It's attached. The code simply
opens a file then reads it until empty.

When I compile this with g++-3.3 (1:3.3.3-9), I get the following output
from strace:

open("test.cc", O_RDONLY)               = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=218, ...}) = 0
0) = 0x40018000
read(3, "#include <fstream>\n\nusing namesp"..., 8192) = 218
read(3, "", 4096)                       = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++

I've opened and read files hundreds of times in my life. What gives now?

Stephen Touset <stephen@touset.org>
#include <fstream>

using namespace std;

int main(void)

	ifstream fin("test.cc");
	char* str;

	if (!fin.is_open())

	while (!fin.eof())
		fin.getline(str, 80);


	return 0;


Attachment: signature.asc
Description: This is a digitally signed message part

Reply to: