[Tech] Stringhe in C
Daniele Masini
d.masini@tiscali.it
Mer 28 Apr 2004 09:12:36 CEST
Scusa, mi correggo:
file_nome[0] = data[6]; /* anno */
file_nome[1] = data[7];
file_nome[2] = '_';
file_nome[3] = data[0]; /* mese */
file_nome[4] = data[1];
file_nome[5] = '_';
file_nome[6] = data[3]; /* giorno */
file_nome[7] = data[4];
file_nome[8] = '\0'; /* fine stringa */
Daniele Masini wrote:
> &data[3], che ti suggerisco di scrivere come &(data[3]), è la stringa
> dal quarto (l'indice dei vettori inizia da 0) carattere fino al primo
> carattere nullo (fine stringa). Ovvero, secondo l'esempio che hai
> riportato è 27/04.
> Per fare quello che vuoi tu, visto che la stringa è piccola, puoi farlo
> carattere per carattere: cioè
>
> file_nome[0] = data[6]; /* anno */
> file_nome[1] = data[7];
> file_nome[2] = '_';
> file_nome[3] = data[3]; /* mese */
> file_nome[4] = data[4];
> file_nome[5] = '_';
> file_nome[6] = data[0]; /* giorno */
> file_nome[7] = data[1];
> file_nome[8] = '\0'; /* fine stringa */
>
> Saluti,
>
> Daniele
>
>
> Valerio Montagnani wrote:
>
>> Ciao a tutti, ho di nuovo un problema di C.
>>
>> Devo scrivere il nome di un file di log, così composto:
>> Log-NOME_MACCHINA_DATA-ORA-NPROG.log
>> dove NOME_MACCHINA è la stazione di lavoro che esegue i conti, DATA è
>> il giorno di elaborazione, ORA l'ora e NPROG è il numero progressivo
>> dell'elaborazione.
>> L'unico campo che non riesco a formattare correttamente è quello DATA.
>> Ho estratto la data dal sistema e l'ho parcheggiata in un vettore
>> (char data[9]).
>> La data estratta è del tipo: 04/27/04 (mm/gg/aa).
>> Vorrei fare in modo di scriverla nel seguente modo:
>> 04_04_27 (aa_mm_gg).
>> Pensavo fosse sufficiente scrivere:
>> strcat(file_nome,&data[3]); per concatenare il primo valore del giorno
>> il 2 (di 27) al vettore nome_file, quindi ripetere l'operazione con il
>> [4] e così via.
>> Invece l'operazione:
>> strcat(file_name,&data[3]), concatena il contenuto di data a partire
>> dalla locazione 3 fino alla fine del vettore data.
>>
>> Come si fa, allora ad estrearre solo i valori che mi interessano dal
>> vettore data, in modo da scrivere il log come vi ho spiegato prima?
>>
>> Grazie Vale
>>
> _______________________________________________
> FLUG - Discussioni tecniche - tech@firenze.linux.it
> URL: http://lists.firenze.linux.it/mailman/listinfo/tech
> Archivio: http://lists.firenze.linux.it/pipermail/tech
> Ricerca nell'archivio: http://www.firenze.linux.it/search
>
Maggiori informazioni sulla lista
flug-tech