PDA

Visualizza la versione completa : [C] Tagliare i primi n caratteri di una stringa


php_4ever
01-07-2010, 17:40
Ciao a tutti. Premetto che nel C sono nuovo e che mi scuso in anticipo in caso questa fosse una domanda a cui è già stata trovata una soluzione, ho cercato e non ho trovato niente.
Sto creando una specie di finta shell per esercitarmi sulle stringhe e sull'input/output.
Avrei bisogno di una funzione che, dato un array di char e un numero, tagli i primi n caratteri (indicati dal numero) e restituisca/scriva in un altro array la stringa definitiva.

Non riesco proprio a trovarla! :dhò: :dhò: :dhò: :dhò:

Faccio un esempio per rendere più chiara la mia intrigata richiesta:
Io scrivo in input ad esempio print ciao.
Ho già una funzione per controllare se c'è un "print " all'inizio della stringa, però ho bisogno una funzione che mi cancelli, in questo caso, i primi 6 caratteri, cioè "print ", per poi avere la stringa da stampare.

Grazie in anticipo per le risposte,
RiKI

MdE2005
01-07-2010, 17:45
Ciao..la prima cosa per esercitarsi è quella di scrivere il codice..

In ogni caso guarda questo sito: www.cplusplus.com


Ciao :)

php_4ever
01-07-2010, 17:50
Ehm, quello è C++, cosa c'entra il tuo messaggio con la mia richiesta?

oregon
01-07-2010, 17:59
C'entra perché c'é anche documentazione C

http://www.cplusplus.com/reference/

php_4ever
01-07-2010, 18:00
Ah, ma alla fine la funzione che ho chiesto? :confused: :confused: :confused:

oregon
01-07-2010, 18:03
Non esiste una specifica funzione che faccia quello che chiedi tu ...

Cerca nelle funzioni che trattano le stringhe.

Puoi usare la

strstr

per cercare una stringa all'interno della tua, oppure la

strchr

per individuare la posizione dello spazio ed agire di conseguenza con i puntatori o con la

strcpy

per copiare la parte che ti interessa.

Ma leggi la documentazione ...

php_4ever
01-07-2010, 18:08
Se non ti rompe troppo, mi fai un esempio? Perché quelle funzioni le avevo già trovate, ma non sono riuscito ad usarle nel modo corretto.
Se mi fai un esempio mi fai un grande favore e favorisci la mia alfabetizzazione in C, come ti ho già detto sono nuovo nel linguaggio e sono convinto che gli esempi pratici sono il modo migliore per imparare. Purtroppo però non li ho trovati e per questo sono venuto a chiedere qui.

Grazie.

oregon
01-07-2010, 18:11
Originariamente inviato da php_4ever
Perché quelle funzioni le avevo già trovate, ma non sono riuscito ad usarle nel modo corretto.

Avresti potuto dirlo prima ...


Se ...

Io sono del parere opposto. Ovvero, che bastano le "dritte" e poi lo studio personale (e l'impegno) è il miglior modo di imparare.

Fra l'altro, nella documentazione indicata, ci sono degli esempi. Per imparare, è necessaroa la voglia di provare.

Fra l'altro, se n è costante (o ne conosci il valore) basta usare un puntatore alla stringa originale, spostato di n caratteri

char *parte = stringa+n;

php_4ever
01-07-2010, 18:15
Originariamente inviato da oregon
char *parte = stringa+n;

Ecco, è solo questo che volevo sapere.

Grazie.

Loading