C++ SIGSEGV

Giorgos Keramidas keramida at ceid.upatras.gr
Wed Sep 11 05:57:01 EEST 2002


On 2002-09-10 23:01, Nikos Kanellopoulos <nkan at panafonet.gr> wrote:
> #include <fstream>
> #include <iostream>
>
> using namespace std;
>
> int main (int argc, char* argv[]) {
>         ifstream file ;
>         char* str;
>
>         file.open ("file.txt", ios::in);
>         file.getline(str, 20);		/* ή εδώ θα σκάσει (3.2) */
>         cout << str << endl;		/* ή εδώ (2.96) */
> }

Prepei na kaneis allocate mnhmh gia to str[] buffer.  Allazontas to
`str' se ena static pinaka me kathorismeno megethos trexei mia xara
sto gcc 3.2.1 prerelease pou exei to FreeBSD-current spiti mou:

	charon at hades[23:59]/home/charon$ cat lala.cc
	#include <fstream>
	#include <iostream>

	using namespace std;

	int
	main(int argc, char* argv[])
	{
		ifstream file;
		char str[256];

		file.open ("file.txt", ios::in);
		file.getline(str, 20);          /* ή εδώ θα σκάσει (3.2) */
		cout << str << endl;            /* ή εδώ (2.96) */
	}
	charon at hades[23:59]/home/charon$ cp lala.cc file.txt
	charon at hades[23:59]/home/charon$ c++ lala.cc
	charon at hades[23:59]/home/charon$ ./a.out
	#include <fstream>
	charon at hades[23:59]/home/charon$

> Είναι δυνατόν ένα τόσο σημαντικό στοιχείο της γλώσσας να
> έχει πρόβλημα στην υλοποίηση;

Den einai adunaton, alla einai toulaxiston apithano.

G.K.



More information about the Linux-greek-users mailing list