[Linuxtrent] Re: Richiesta aiuto C++

  • From: ianezz@xxxxxxxxxx
  • To: linuxtrent@xxxxxxxxxxxxx
  • Date: Wed, 22 Jan 2003 14:55:18 +0100

Mario Dalla Fontana, pigiando tasti a caso sul citofono, ha scritto:

 > in un caso il tipo è un puntatore char e nell'altro un array char[].

Posto che l'array sia NULL-terminated, e` solo questione di

  #include <string>
  ...
  char temperatura[10];
  ...
  // Crea una nuova string e la inizializza con una costante...
  std::string risultato("La temperatura e`: ");

  // E poi ci appende la temperatura.
  risultato += temperatura;

  // Se poi ti serve come const char *, basta usare il metodo c_str()
  printf("%s\n",risultato.c_str());
  
  

Ci sarebbe poi la soluzione basata su ostringstream (se ce l'hai), che
in pratica e` uno stream di output basato su stringhe.

  #include <string>
  #include <sstring>

  ostringstream risultato;
  char temperatura[10];

  ...
  risultato << "La temperatura e`: " << temperatura; 

  // Puoi facilmente ottenere una stringa
  string s(risultato.str());

  // O anche ottenere un const char *
  printf("%s\n",risultato.str().c_str());


A dire il vero, se non hai ostringstream di serie col compilatore, ci
sarebbe anche il "vecchio" ostrstream che in pratica e` la stessa
cosa, ma e` deprecato.

Per i dettagli:

    http://www.cplusplus.com/ref/iostream/ostringstream/
-- 
 |   \    \  | ___|_  |_  | ianezz AT sodalia.it
 |  _ \  | \ | _|    /   /  Visita il LinuxTrent a
_|_/  _\_|  _|____|___|___| http://www.linuxtrent.it
-- 
Per iscriversi  (o disiscriversi), basta spedire un  messaggio con SOGGETTO
"subscribe" (o "unsubscribe") a mailto:linuxtrent-request@xxxxxxxxxxxxx


Other related posts: