Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - salvare frasi in una stringa
Forum - C/C++ - salvare frasi in una stringa

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
mimmo87 (Normal User)
Newbie


Messaggi: 6
Iscritto: 01/10/2008

Segnala al moderatore
Postato alle 17:16
Giovedì, 02/10/2008
Sarà che il mio libro è fatto malissimo,ma è possibile che non spiega come fare per poter salvare frasi inserite da tastiera in una stringa??
se io volessi inserire ad esempio il mio nome e cognome(metto printf("inserisci nome e cognome:"))e poi volessi salvare sia nome che cognome in una stringa di lunghezza massima 20.. come dovrei fare?:-?:d

PM Quote
Avatar
pierotofy (Admin)
Guru^2


Messaggi: 6230
Iscritto: 04/12/2003

Segnala al moderatore
Postato alle 19:03
Giovedì, 02/10/2008
Codice sorgente - presumibilmente C/C++

  1. char nomecognome[20];
  2.  
  3. cin >> nomecognome;



Nota: printf è una funzione del C ANSI e non dovrebbe essere usata con C++.

Ultima modifica effettuata da pierotofy il 02/10/2008 alle 19:03


Il mio blog: https://piero.dev
PM Quote
Avatar
WARRIOR (Ex-Member)
Guru


Messaggi: 627
Iscritto: 30/03/2007

Segnala al moderatore
Postato alle 19:16
Giovedì, 02/10/2008
Postato originariamente da pierotofy:

Codice sorgente - presumibilmente C/C++

  1. char nomecognome[20];
  2.  
  3. cin >> nomecognome;



Ricordando però, che facendo in questo modo, il programma inserirà nella stringa i dati fino a quando non immetterai un carattere di spaziatura.
Se inserisci:

'nome cognome'

memorizzerà solo la stringa 'nome'. ;)

PM Quote
Avatar
mimmo87 (Normal User)
Newbie


Messaggi: 6
Iscritto: 01/10/2008

Segnala al moderatore
Postato alle 19:43
Giovedì, 02/10/2008
ti ringrazio!ho una confusione allucinante..il programma che devo fare è in C però io uso dev C++..non pensavo ci fosse tutta questa differenza!8-|

PM Quote
Avatar
^JAVA^ (Ex-Member)
Pro


Messaggi: 93
Iscritto: 06/12/2007

Segnala al moderatore
Postato alle 21:58
Giovedì, 02/10/2008
Testo quotato

Postato originariamente da mimmo87:

ti ringrazio!ho una confusione allucinante..il programma che devo fare è in C però io uso dev C++..non pensavo ci fosse tutta questa differenza!8-|


Ti consiglio di lasciare stare Dev-C++ e di passare a Visual C++.
Codice sorgente - presumibilmente C/C++

  1. char arr[20];
  2.  gets(arr);//Leggo l' input da tastiera
  3.  if(strlen(arr)>=20){//Implemento un banale
  4.  //controllo per verificare la lunghezza
  5.  //della stringa
  6.  printf("%s","La stringa inserita è troppo lunga.\nPremere invio per uscire\n");
  7.  getchar();
  8.  exit(1);
  9.  }
  10.  printf("%s\n",arr);//Stampo l' output a video


Ciao.

Ultima modifica effettuata da ^JAVA^ il 02/10/2008 alle 22:22
PM Quote
Avatar
pierotofy (Admin)
Guru^2


Messaggi: 6230
Iscritto: 04/12/2003

Segnala al moderatore
Postato alle 9:40
Venerdì, 03/10/2008
Testo quotato

Postato originariamente da WARRIOR:

Ricordando però, che facendo in questo modo, il programma inserirà nella stringa i dati fino a quando non immetterai un carattere di spaziatura.



Grazie per avermi corretto, ricordavo che succedeva con lo scanf ma avevo il dubbio col cin.


Il mio blog: https://piero.dev
PM Quote
Avatar
gioser (Normal User)
Pro


Messaggi: 111
Iscritto: 03/10/2008

Segnala al moderatore
Postato alle 10:01
Venerdì, 03/10/2008
se devi realizzare programma in C++, non puoi usare la cin. Devi usare la scanf()

#include <stdio.h>

int main()
{
    char nome[100];
    char cognome[100];

    puts("dammi nome e cognome");
    scanf("%s%s", nome, cognome);
    printf("nome=%s cognome=%s", nome, cognome);
    return 0;
}

:)

PM Quote
Avatar
mimmo87 (Normal User)
Newbie


Messaggi: 6
Iscritto: 01/10/2008

Segnala al moderatore
Postato alle 12:44
Venerdì, 03/10/2008
grazie mille!davero!Ora funziona!!:k:

PM Quote
Avatar
munkaka (Member)
Pro


Messaggi: 119
Iscritto: 07/09/2008

Segnala al moderatore
Postato alle 16:17
Venerdì, 03/10/2008
non è vero che non puoi usare il cin con c++, e usando cin.getline() prende anche gli spazi, per esempio per prendere una stringa di 20 caratteri con spazi si puo fare:
Codice sorgente - presumibilmente C/C++

  1. char nome[21];
  2. cin.getline(nome,21);


PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo