🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: de.comp.lang.c++
Article #793

Re: Schlechte Eingabemethode?

#793
From: Nico Josuttis
Date: Tue, 14 Nov 1995 15:49
29 lines
1490 bytes
In article <wm1GlMD37Caez3@a-schoep.amtrash.comlink.de>,
Andreas Schoepf <A.Schoepf@AmTrash.comlink.de> wrote:
>besser ist folgendes:
>
>#include <iostream.h>
>#include <stream.h>
>int main(void)
>{
>      char input_line[80];
>      cout << "\nName: ";
>      cin >> input_line;
>      char *eingabe = new char[strlen(input_line)+1];// wegen der terminierenden
>                                                     // 0 ein Zeichen mehr
>      strcpy(*eingabe,input_line);
>      cout << "Ergebnis: " << *eingabe << "\n";
>      return 0;
>}
Und da ist wieder der ach so beliebte C-Fehler, naemlich anzunehmen, dass
eine Zeile hoechstens 79 (? wieso nicht 80 ?) Zeichen lang sein kann.
Also um den Absturz zu vermeiden, noch besser:
	>      cin >> setw(80) >> input_line;
oder
	>      cin >> setw(sizeof(input_line)) >> input_line;

-- 
Nico                             address: BREDEX GmbH, Nicolai Josuttis
email:   nico@bredex.de                   Fallersleber-Tor-Wall 23
phone:   +49 531 24330-0                  D-38100 Braunschweig
fax:     +49 531 24330-99                 Germany
Technical Details
Message-ID: <DI1IM3.4u3@bredex.de>
Path: arc1-ca.pugleaf.net!lumumba.braunschweig.pop.de!bredex!nico
References: <5x0NrSGKhjB@kl.in-berlin.de> <wm1GlMD37Caez3@a-schoep.amtrash.comlink.de>

Show Full Headers
Complete Article Headers
Newsgroups: de.comp.lang.c++
Path: arc1-ca.pugleaf.net!lumumba.braunschweig.pop.de!bredex!nico
From: nico@bredex.de (Nico Josuttis)
Subject: Re: Schlechte Eingabemethode?
Message-ID: <DI1IM3.4u3@bredex.de>
Reply-To: nico@bredex.de
Organization: Bredex GmbH
References: <5x0NrSGKhjB@kl.in-berlin.de> <wm1GlMD37Caez3@a-schoep.amtrash.comlink.de>
Date: Tue, 14 Nov 1995 15:49:14 GMT