Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Canon EOS 90D, grande velocità per sport e natura, al giusto prezzo – La prova
Canon EOS 90D, grande velocità per sport e natura, al giusto prezzo – La prova
Con la nuova 90D, le EOS a 2 cifre tornano a puntare in alto. Corpo funzionale e prestazioni equivalenti a quelle della 7D Mark II, offerte a un prezzo sensibilmente inferiore, interesseranno un vasto pubblico. Molto elevata (forse troppo) la risoluzione del sensore.
Le tecnologie edge server di Lenovo sono il motore della scuderia Ducati
Le tecnologie edge server di Lenovo sono il motore della scuderia Ducati
Per massimizzare le prestazioni di un pilota in pista oggi è diventato essenziale analizzare un’enorme mole di dati. Ducati ha costruito un’infrastruttura edge, basata su server Lenovo, che segue la scuderia in pista su tutti i circuiti. Edge9 ha intervistato Gabriele Conti e Kostantin Kostenarov di Ducati
Acer Predator Triton 500, Core i7-9750H e RTX 2070 Max-Q per giocare alla grande
Acer Predator Triton 500, Core i7-9750H e RTX 2070 Max-Q per giocare alla grande
Abbiamo provato una nuova versione dell'Acer Predator Triton 500, dotata di CPU Intel Core i7-9750H con 6 core e 12 thread e GPU Nvidia GeForce RTX 2070 Max-Q, il tutto corredato da 32 GB di memoria RAM e un SSD da ben 1TB, ottenuto con due unità da 512 GB in RAID 0.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 14-02-2020, 00:12   #1
9abs
Junior Member
 
Iscritto dal: Jan 2020
Messaggi: 14
Aiuto FILE (C)

Mi da errore nella modifica nel file..mi ritorna solo un 0.
Sembra non riesca a leggere il file in modo corretto ma non mi da nessun errore..

Codice:
#include <stdio.h>
#include <stdlib.h>
void Salva(FILE * fin,FILE * fout);

#define MAX 10

int main(){        //main


	FILE* fin,* fout;
	
	fin=fopen("text.txt","r");
	if(fin==NULL)
		printf("errore apertura fin");
	fout=fopen("text.txt","w");
	if(fout==NULL)
		printf("errore apertura fout");
	Salva(fin,fout);

}

//-------------------------------------

void * xmalloc(int n){ 				//return v.fin
	
	int* v_fin;
	if((v_fin=malloc(n*sizeof(int)))==NULL){
		printf("errore allocazione");
		exit(0);
	}
	return v_fin;
}

int * negativi(int A[],int n,int* count){  	//return v_fin 
	
	int i,j,c;
	j=c=0;
	int* v_fin;
	for(i=0;i<n;i++){
		if(A[i]<0)
			c++;
	}
	
	*count=c;
	v_fin=xmalloc(c);
	
	for(i=0;i<c;i++){
		if(A[i]<0){
			v_fin[j]=A[i];
			j++;
		}
	}
	return v_fin;
}
//-----------------------------------------

void Salva(FILE * fin,FILE * fout){  //f per operazioni sui file 

	int i;
	int count_n,count_neg;
	int *v_inz,*v_fin;
	//il primo numero di file indica quanti elementi ha l'array
	
	fscanf(fin,"%d",&count_n);
	printf("%d",count_n);  //mi stampa un numero random non il primo
                                                                     numero del file

	
	v_inz=xmalloc(count_n);
	
	for(i=0;i<count_n;i++){
	
		fscanf(fin,"%d",&v_inz[i]);
		
		}
	
		
	v_fin=negativi(v_inz,count_n,&count_neg);
	
		fprintf(fout,"%d\n",count_neg);
	
	for(i=0;i<count_neg;i++){
		fprintf(fout,"%d\n",v_fin[i]);
		}
	free(v_inz);
	free(v_fin);
	

}
è un po lungo scusate!
9abs è offline   Rispondi citando il messaggio o parte di esso
Old 14-02-2020, 07:01   #2
misterx
Senior Member
 
Iscritto dal: Apr 2001
Messaggi: 3449
di primo acchito non vedo la fclose(fin); fclose(fout);
misterx è offline   Rispondi citando il messaggio o parte di esso
Old 14-02-2020, 07:38   #3
Kaya
Senior Member
 
Iscritto dal: Apr 2005
Messaggi: 1555
Non capisco alcune cose.
in primis fin=fopen("text.txt","rn==NULL) non ha il doppio apice di chiusura
E poi perchè due puntatori?
Potresti fare tutto con un unico
fp = fopen("test.txt", "a+");

In questo modo non dovresti avere problemi.
Kaya è offline   Rispondi citando il messaggio o parte di esso
Old 14-02-2020, 09:10   #4
9abs
Junior Member
 
Iscritto dal: Jan 2020
Messaggi: 14
La prova chiedeva esplicitamente l uso di una funzione
void Salva (File * fin, File * fout);
Forse ho sbagliato e dovevo usare due file distinti..
Provo a sistemare quello che mi avete fatto notare e vedo che ne esce..grazie!
9abs è offline   Rispondi citando il messaggio o parte di esso
Old 14-02-2020, 10:59   #5
Kaya
Senior Member
 
Iscritto dal: Apr 2005
Messaggi: 1555
Capisco che è per un esercizio, però mi pare assurdo fare una cosa del genere SULLO STESSO FILE.
Altra domanda "rn" e "wut" nel fopen.. scusa ma cosa significano? Non trovo nulla nella documentazione ..
Kaya è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Canon EOS 90D, grande velocità per sport e natura, al giusto prezzo – La prova Canon EOS 90D, grande velocità per sport ...
Le tecnologie edge server di Lenovo sono il motore della scuderia Ducati Le tecnologie edge server di Lenovo sono il moto...
Acer Predator Triton 500, Core i7-9750H e RTX 2070 Max-Q per giocare alla grande Acer Predator Triton 500, Core i7-9750H e RTX 20...
HPE Aruba Instant On AP15, un access point ideale per le PMI HPE Aruba Instant On AP15, un access point ideal...
Resident Evil 3 provato con 10 schede video Resident Evil 3 provato con 10 schede video
WindTre: 4 offerte a cui non potrete res...
Come suona il nuovo Coronavirus? Il MIT ...
Offerte Gearbest: lampade sterilizzatric...
Kena Per Te 30, 50, 70 Giga: le offerte ...
Samsung festeggia la Pasqua 2020: fino a...
MotoGP eSport, seconda tappa al Red Bull...
Vodafone e Coronavirus: ancora gratis il...
TV 8K: la domanda di mercato in volumi r...
Nuovo problema per Zoom: avviata class a...
Offerte Amazon oggi (fino a -71% e dispo...
EVGA annuncia le versioni KO Gaming dell...
Google vieta l'uso di Zoom ai dipendenti...
Catturata l'immagine di un getto relativ...
LEGO Super Mario: in preordine il set di...
Cos'è e a cosa serve Tuned, la nu...
VLC Media Player
Chromium
Opera 67
Mozilla Thunderbird 68
Google Chrome Portable
PeaZip
Spybot Search & Destroy
OCCT
NTLite
BurnAware Premium
BurnAware Free
Avira Free Antivirus
AIDA64 Extreme Edition
Firefox 75
K-Lite Codec Pack Update
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 14:11.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Served by www2v