Torna indietro   Hardware Upgrade Forum > Software > Programmazione

MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi
MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi
Abbiamo provato MSI PRO MAX EDGE AI+, un mini-PC professionale progettato per eseguire modelli di intelligenza artificiale in locale, senza dipendere dal cloud. Il sistema abbina il processore AMD Ryzen AI Max+ 395, 128 GB di memoria unificata e un telaio in alluminio da appena 4 litri, con l'obiettivo di offrire capacità di elaborazione elevate in un formato compatto.
Recensione vivo X500 Pro Max: la fotografia mobile ha un nuovo protagonista
Recensione vivo X500 Pro Max: la fotografia mobile ha un nuovo protagonista
Il nuovo top di gamma vivo punta su un comparto fotografico particolarmente articolato, con un teleobiettivo da 200 megapixel e teleconvertitori esterni capaci di arrivare a 400 mm equivalenti. Lo abbiamo provato a Tenerife, mettendo alla prova fotocamere, prestazioni, autonomia e accessori. Ecco come si è comportato.
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
Un mondo affollato e vivo, personaggi destinati a sparire a fine test e nessuno a inseguire l'oggetto giusto. Beta e stress test di World of Warcraft: Forever hanno fatto emergere un roleplay spontaneo, tra danze a Goldshire e code ordinate ai PNG
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 30-01-2009, 11:32   #1
Cory
Member
 
L'Avatar di Cory
 
Iscritto dal: Jan 2009
Città: Trento
Messaggi: 81
[C++] problema argc argv

Innanzitutto mi presento, visto che sono nuovo di qui
Mi chiamo Michele e frequento il primo anno della facoltà di Informatica, mi sono iscritto sul forum nella speranza di trovare aiuto in quella materia così affascinante ma anche ostica che è la programmazione.

Veniamo subito al dunque: non mi è per nulla chiaro come debbano essere utilizzati i parametri int argc e char* argv[] nella funzione main per poter programmare su più file. Esempio pratico: voglio fare un programma che mi legge in input un file .txt e mi scriva in output su un altro .txt mettiamo caso solo le lettere "a".
Includo quindi la libreria <fstream> e dichiaro il nome degli stream di input e output. Tuttavia non ho capito come utilizzare argc e argv all'interno del codice. Nello specifico:

Codice:
using namespace std;
#include<iostream>
#include<fstream>
#include<cctype>

int main(int argc,char* argv[]){

fstream input, output;
char ch;

input.open("input.txt", ios::in);
output.open("output.txt", ios::out);

while((input.get(ch)) && isalpha(ch)) {

    if(ch=='a')
        output.put(ch);

    }

input.close();
output.close();
}
Il programma mi crea correttamente il file output.txt ma non ci scrive nulla.
Grazie in anticipo a chi mi aiuterà
Cory è offline   Rispondi citando il messaggio o parte di esso
Old 30-01-2009, 15:36   #2
Mesh89
Member
 
Iscritto dal: Dec 2006
Messaggi: 198
A me funziona. Hai messo un file input.txt corretto? (stesso path dell'eseguibile, delle a...)
Mesh89 è offline   Rispondi citando il messaggio o parte di esso
Old 30-01-2009, 16:29   #3
Cory
Member
 
L'Avatar di Cory
 
Iscritto dal: Jan 2009
Città: Trento
Messaggi: 81
ovviamente sì, con del testo incollato da un sito a caso.
Specifico meglio: il codice del mio primo post è stato scritto su Windows con CodeBlocks.
In realtà io ho bisogno di programmare sotto Ubuntu perchè l'esame si svolge sotto questo OS.
Al momento della compilazione digito

Codice:
./a.out input.txt output.txt a
e il compilatore mi restituisce questo errore
Codice:
g++: a: Nessun file o directory
ho modificato il codice come segue

Codice:
using namespace std;
#include<iostream>
#include<fstream>
#include<cctype>

int main(int argc, char* argv[]){


  fstream input,output;
  char ch, temp;
  
  input.open("input.txt",ios::in);
  output.open("output.txt",ios::out);

  temp=*argv[3];

  while(input.get(ch)){

    if(isalpha(ch)&& ch==temp)

      output.put(ch);
  }
input.close();
output.close();

 return 0;
}
Da quel che ho capito argv[3] identifica il terzo elemento del comando che do al compilatore al momento della compilazione, cioè 'a'. Ma mi da l'errore di cui sopra...
Cory è offline   Rispondi citando il messaggio o parte di esso
Old 30-01-2009, 16:47   #4
Mesh89
Member
 
Iscritto dal: Dec 2006
Messaggi: 198
Aspetta aspetta... Che significa

Al momento della compilazione digito ./a.out input.txt output.txt a ?

La compilazione si fa così:

g++ programma.cpp

mentre il programma si avvia così

./a.out input.txt output.txt a

E come prima, mi funziona tutto (sono sotto Ubuntu).
Mesh89 è offline   Rispondi citando il messaggio o parte di esso
Old 30-01-2009, 16:48   #5
Cory
Member
 
L'Avatar di Cory
 
Iscritto dal: Jan 2009
Città: Trento
Messaggi: 81
ehm come non detto..
sbagliavo a compilare

dovevo prima fare g++ file.cc
Cory è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2009, 19:21   #6
danieljsoffio
Junior Member
 
Iscritto dal: Feb 2009
Messaggi: 1
ciao, anche io sono nuovo di qst forum, quindi mi presento, mi chiamo daniele. Anche io sono alle prese con programmazione, e ho lo stesso problema, ho anche provato a copiare il codice, ma, anke se mi compila e mi crea il file, nel file "output.txt" non mi scrive niente !!!
danieljsoffio è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB...
Recensione vivo X500 Pro Max: la fotografia mobile ha un nuovo protagonista Recensione vivo X500 Pro Max: la fotografia mobi...
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà WoW Forever: la beta è stato uno dei mome...
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA Oracle AI World 2026: in Europa prima la sovrani...
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort DS N°7 E-Tense: il SUV premium made in Melfi...
AMD mette la freccia e si prepara allo s...
Sony Santa Monica posticipa God of War L...
Il telescopio spaziale Swift è ri...
Black Friday HONOR, prezzi giù fi...
AliExpress sfida Amazon sui prezzi: e-bi...
Gemini sotto accusa in Ungheria: per l'a...
Windows 11 può girare sulla NPU invece d...
MediaWorld diventa cinese: l'UE dice s&i...
Akamai potenzia il proprio cloud con due...
Steam, Valve cambia le regole: le revisi...
Canva licenzia (anche) per colpa dell'IA...
Axerta: l’IA traina la crescita delle te...
Galaxy A38, la batteria cresce ma il pre...
Notifica su Facebook: 'Effettuerai la mi...
Xbox pronta a dire addio allo studio di ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
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: 00:40.


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