C++ funzione output
Salve
volevo sapere se esiste una funzione c++ che data una stringa
ne stampa a video solo una parte desiderata di questa
ad esempio ho la stringa memorizzata
char nome[20];
che contiene la parola : "Ciao come stai,io sto bene"
e voglio stampare solo il "come stai"
vi ringrazio.
volevo sapere se esiste una funzione c++ che data una stringa
ne stampa a video solo una parte desiderata di questa
ad esempio ho la stringa memorizzata
char nome[20];
che contiene la parola : "Ciao come stai,io sto bene"
e voglio stampare solo il "come stai"
vi ringrazio.
Risposte
usa un ciclo for e con cout stampa una lettera per volta
(ovviamente puoi creare una funzione a cui bisognerà passare la stringa e un parametro che ci dica fino a quale carattere stampare)
(ovviamente puoi creare una funzione a cui bisognerà passare la stringa e un parametro che ci dica fino a quale carattere stampare)
si è una soluzione possibile me vedi devo farle tantissime volte e ognunoa di queste prevede una piccola differenza con le altre quindi non potrei neanche creare una vera e propria funzione.
Questa dovrebbe fare al caso tuo:
char *strncpy(char *dest, const char *src, size_t n);[/code]
se non erro copia il contenuto di un vettore in un altro vettore.
con delle limitazioni che posso settare io,
è un metodo che avevo pensato anche io ma per fare quello che ho in mente devo cmq passare per 2 istruzioni, in più dovrei dichiarare un vettore in piu'.......
con delle limitazioni che posso settare io,
è un metodo che avevo pensato anche io ma per fare quello che ho in mente devo cmq passare per 2 istruzioni, in più dovrei dichiarare un vettore in piu'.......
se non ci descrivi più precisamente cosa devi fare non possiamo aiutarti. in cosa consistono le differenze tra una volta e l'altra?
nel senso che non posso creare una funzione e chiamare questa ogni volta perchè ogni volta che utilizzo tale procedimento nel corso del mio proogetto dovrei eseguire all'interno di essa altre chiamate a funzioni e a seconda del caso sono chiamate a funzioni tra loro diverse.
creare una nuova funzione non è possibile per il progetto che sto elaborando credetemi, sto cercando una funzione,se esiste, che stampi data una stringa solo una parte di essa
creare una nuova funzione non è possibile per il progetto che sto elaborando credetemi, sto cercando una funzione,se esiste, che stampi data una stringa solo una parte di essa
"Pablo1986":
nel senso che non posso creare una funzione e chiamare questa ogni volta perchè ogni volta che utilizzo tale procedimento nel corso del mio proogetto dovrei eseguire all'interno di essa altre chiamate a funzioni e a seconda del caso sono chiamate a funzioni tra loro diverse.
creare una nuova funzione non è possibile per il progetto che sto elaborando credetemi, sto cercando una funzione,se esiste, che stampi data una stringa solo una parte di essa
si ma ci devi dire quali criteri devi seguire per scegliere la parte da stampare. le prime due parole? fino al punto?
il criterio dipende esclusivamente dal caso
mi spiego meglio
il mio progetto acquisisce una stringa da tastiera
con lunghezza variabile.
dato che quando voglio visualizzare le info da me inserite su schermo devo ottenere qualcosa del tipo
+-------------------------------+ (stringa costante)
| Nome prodotto: Casa | (in questo casa è ok)
+-------------------------------+
ma se invece che casa avessi
un nome molto più lungo la formattazione da me eseguita non avrebbe piu' senso perchè si verrebbe a creare una situazione del tipo
+--------------------------------+
| Nome: Stringa esageratamente lunga |
+--------------------------------+
che non è il mio intento
avevo pensato quindi di fare una cosa del tipo
+--------------------------------+
| Nome: Stringa esageratame|
| ente lunga |
+--------------------------------+
ma per fare cioò non so a priori cosa possa essere inserito da tastiera, devo quindi tagliare la stringa inserita in tante parti in modo da avere l'effetto sopra indicato.
Ora:siccome nel mio progetto ho scritto quasi 5000 righe sto cercando di scrivere il meno righe possibili.
Proprio poer questo mi servirebbe la funzione da me citata in questo topic.
mi spiego meglio
il mio progetto acquisisce una stringa da tastiera
con lunghezza variabile.
dato che quando voglio visualizzare le info da me inserite su schermo devo ottenere qualcosa del tipo
+-------------------------------+ (stringa costante)
| Nome prodotto: Casa | (in questo casa è ok)
+-------------------------------+
ma se invece che casa avessi
un nome molto più lungo la formattazione da me eseguita non avrebbe piu' senso perchè si verrebbe a creare una situazione del tipo
+--------------------------------+
| Nome: Stringa esageratamente lunga |
+--------------------------------+
che non è il mio intento
avevo pensato quindi di fare una cosa del tipo
+--------------------------------+
| Nome: Stringa esageratame|
| ente lunga |
+--------------------------------+
ma per fare cioò non so a priori cosa possa essere inserito da tastiera, devo quindi tagliare la stringa inserita in tante parti in modo da avere l'effetto sopra indicato.
Ora:siccome nel mio progetto ho scritto quasi 5000 righe sto cercando di scrivere il meno righe possibili.
Proprio poer questo mi servirebbe la funzione da me citata in questo topic.
scusate ma gli esempi da me fatti sopra non vengono visualizzati correttamente da questo forum
i tre esempi dovrebbero essere questi:
ti basta controllare se una stringa ha più di un certo numero di caratteri e in tal caso andare a capo e stampare:
1) |
2) la stringa
3) il numero di spazi rimanenti
4) |
+-------------------------------+ (stringa costante) | Nome prodotto: Casa | (in questo casa è ok) +-------------------------------+ +--------------------------------+ | Nome: Stringa esageratamente lunga | +--------------------------------+ +--------------------------------+ | Nome: Stringa esageratame | | ente lunga | +--------------------------------+
ti basta controllare se una stringa ha più di un certo numero di caratteri e in tal caso andare a capo e stampare:
1) |
2) la stringa
3) il numero di spazi rimanenti
4) |
se vuoi andare a capo e mettere la stringa al centro la cosa non è difficile, basta fare
$s=(t-(c-2))/2$
dove $c=$caratteri della stringa ancora da stampare e $t=$lunghezza della stringa "+--------------------------------+"
e scrivere la stringa dopo $s$ spazi
$s=(t-(c-2))/2$
dove $c=$caratteri della stringa ancora da stampare e $t=$lunghezza della stringa "+--------------------------------+"
e scrivere la stringa dopo $s$ spazi
alla fine sono stato costretto a dichairare una funzione, con le stesse caratteristiche date suggerite, cmq ti ringrazio.
La soluzione per centrare la riga è un ottima pensata
grazie mille
La soluzione per centrare la riga è un ottima pensata
grazie mille
di nulla
