Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2016
    Messaggi
    2

    [C] file di testo e operazioni varie

    Ciao a tutti ragazzi , sono nuovo . Ho iniziato non da molto a programmare sia per passione che per studi universitari . Per ora conosco (o sto imparando a conoscere ) i linguaggi C++ e C e mi sto avvicinando a Python . Vengo al dunque...


    1) Può sembrare banale ma purtroppo non riesco a trovare soluzione : voglio scrivere una serie di stringhe o cartteri o interi su file di testo , utilizzando la "fprintf" e ad ogni utilizzo voglio che il file di testo vada a capo , ma anche utilizzando i caratteri '\n' ecc non ottengo il risultato desiderato , consigli in merito ? sbaglio qualcosa ? Utilizzo attualemente windows 10 64bit , ma non credo ci dovrebbero essere grosse differenze (da quanto ricordo su ubuntu non avevo problemi del genere).

    2) Vorrei sapere se è possibile attraverso funzioni preimpostate creare una serie di file di testo sequenziali ad esempio : elenco1.txt, elenco2.txt, elenco3.txt ,elenco 4.txt ... elencoN.txt , utilizzando un ciclo e che appunto modifichino solo il numero/carattere N all' internodella stringa . Ho in mente varie idee per ottenere il risultato sperato , ad esempio vedere la stringa come array di tipo char e modificare di volta in volta in quel preciso elemento dell' array il valore di "n" ma mi sembra assai machiavellica e poco elegante ...

    Vi ringrazio in anticipo per eventuali risposte.

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Se qualcosa non va in un tuo codice, mostralo e se ne parla.

    P.S. In genere si discute di un solo problema per volta in un thread di un forum
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2016
    Messaggi
    2
    Ok , scusa se ho fatto 2 domande nello stesso thread . La seconda l ' ho comunque risolta , nel modo che avevo scritto.

    Per quanto riguardai il primo quesito :

    Il codice qui sotto (in linguaggio c ) semplicemente genera times volte uno slave che calcola un numero rispetto ad un numero n utilizzando una divisione %10 .
    Lo stesso processo slave apre in modalità append il file di testo e ci scrive sopra i numeri calcolati.
    Vorrei che li scrivesse 1 per riga (andando a capo ogni volta) invece li scrive , comunque in ordine di inserimento , ma sempre sulla stessa riga .


    codice:
    for (int i =0;i<times;i++)         /Itero il ciclo per 8 volte per scrivere 8 numeri diversi//	                                    
    	
    	{
    		pid_slave=fork();              //creo un processo slave con la fork 
    	
    	if(pid_slave==0)                  //se sono nello slave di cui non si conosce il pid (pid==0)
    	{
    	
                           
    fp=fopen(file,"a");               //apro in modalità append(che mi porta direttamente in coda al file) il file numeri.txt
    fprintf(fp,"\n %i",n%10);          //e scrivo su file un numero compreso tra 1 e 100 derivato dalla divisione di resto max 10(%10) dal numero n 
    exit(pid_slave);                      //ogni volta che eseguo l ' operazione esco dallo slave con la funzione exit(pid_slave calcolato dalla fork)
    }
    
    
    	}

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.