Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra integra un sensore da 1 pollice 8K, ottiche Leica e triplo chip IA. Tra schermo OLED rimovibile, workflow I-Log a 10 bit e stabilizzazione a tre assi, analizziamo le doti tecniche di una gimbal camera pensata per i professionisti
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 18-01-2010, 20:25   #1
-hide-
Senior Member
 
L'Avatar di -hide-
 
Iscritto dal: Sep 2008
Città: Messina
Messaggi: 991
[C] Compilazione ed esecuzione da terminale

Sono in prossimità di un esame e dunque mi cimento nella visione di alcuni compiti svolti. In uno di questi si richiede di scrivere un programmino C che moltiplichi e dividi due interi presi come parametri (da terminale, ovviamente!).

Questo è il codice del main:
Codice:
#include <stdio.h>
#include "moltiplica.h"
#include "dividi.h"

int main ( int argn, char*  argv[]) {
	printf("prodotto = %f\n", (moltiplica(atoi(argv[1]),atoi(argv[2]))));
	printf("quoziente = %f\n", (dividi(atoi(argv[1]),atoi(argv[2]))));
	return;
}
Ho delle domande a riguardo di queste righe:
  • Codice:
    int main ( int argn, char*  argv[])
    Utilizzando il programma da terminale ovviamente questa specificazione è necessaria.
    Io, però, non ricordo perfettamente come si passano i parametri ad un file C o più che altro mi spiazza il primo parametro "int argn". Cosa prende quest'ultimo visto che all'interno delle funzioni passo due elementi dell'array argv.
    Inoltre perché passo gli elementi dell'array argv che è un puntatore di tipo char se mi richiede due
  • Codice:
    printf("prodotto = %f\n", (moltiplica(atoi(argv[1]),atoi(argv[2]))));
    printf("quoziente = %f\n", (dividi(atoi(argv[1]),atoi(argv[2]))));
    Che è atoi?
  • Perché i prototipi delle funzioni si trovano in due file header separati dalle loro definizioni, che sono in .c (al momento mi ritrovo 4 file).
Se avete link o risorse utili al mio scopo vi prego di fornirmene.
__________________

PC/HTPC: Mac Mini 3,1 late 2009 | My Book Studio 2TB | LG M237WD monitor/tv | Logitech Z4 | Apple Magic Mouse | Apple Wireless Keyboard | Apple Remote
Mobile: Samsung Galaxy Wonder i8150 cm9
LinkedIn

Ultima modifica di -hide- : 18-01-2010 alle 20:37.
-hide- è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2010, 01:00   #2
clockover
Senior Member
 
L'Avatar di clockover
 
Iscritto dal: Oct 2004
Messaggi: 1945
int argn è il numero di parametri passati dal programma! Il minimo è 1 e si riferisce al programma stesso!

Per quanto riguarda atoi --> http://lmgtfy.com/?q=man+atoi
clockover è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2010, 19:11   #3
-hide-
Senior Member
 
L'Avatar di -hide-
 
Iscritto dal: Sep 2008
Città: Messina
Messaggi: 991
Quote:
Originariamente inviato da clockover Guarda i messaggi
Per quanto riguarda atoi --> http://lmgtfy.com/?q=man+atoi
Perfetto chiarito l'atoi!
Certo che non era difficile, ma in quel preciso momento mi veniva più facile lasciarlo scritto qui


Continuo a insistere sull'ultimo punto invece e riformulo la domanda perché, mi accorgo, non è molto chiara: mi ritrovo quattro file (due header e due sorgenti C) in cui, a due a due, vi si trovano prototipi delle funzioni moltiplica e dividi e codice delle relaive funzioni. Perché scrivere il codice in altri due file C? Correttezza stilistica, pratica o pura voglia del prof secondo voi?
__________________

PC/HTPC: Mac Mini 3,1 late 2009 | My Book Studio 2TB | LG M237WD monitor/tv | Logitech Z4 | Apple Magic Mouse | Apple Wireless Keyboard | Apple Remote
Mobile: Samsung Galaxy Wonder i8150 cm9
LinkedIn
-hide- è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2010, 23:47   #4
clockover
Senior Member
 
L'Avatar di clockover
 
Iscritto dal: Oct 2004
Messaggi: 1945
La cosa è puramente didattica! Almeno così penso io! In quel modo hai visto: 1) utilizzo degli header, 2) utilizzo dei parametri, 3) funzione di libreria standard (atoi)! Anche perchè mi pare di capire che sei alle prime armi... non che io sia avanzato comunque!
clockover è offline   Rispondi citando il messaggio o parte di esso
Old 20-01-2010, 08:20   #5
-hide-
Senior Member
 
L'Avatar di -hide-
 
Iscritto dal: Sep 2008
Città: Messina
Messaggi: 991
Quote:
Originariamente inviato da clockover Guarda i messaggi
La cosa è puramente didattica! Almeno così penso io! In quel modo hai visto: 1) utilizzo degli header, 2) utilizzo dei parametri, 3) funzione di libreria standard (atoi)! Anche perchè mi pare di capire che sei alle prime armi... non che io sia avanzato comunque!
Proprio alle prime armi no, però non avevo ancora visto ed utilizzato sorgenti che specificassero l'argomento del main. Per questo mi sono ritrovato un pò spaesato. Infatti ero abituato ad inserire la definizione della funzione li dove vi era il prototipo (all'interno dello stesso file). In realtà ancora non mi capacito come faccia a prendere proprio il giusto file da collegare, deve essere un compito che svolge automaticamente perché nell'header non specifico alcun riferimento a quel file!
__________________

PC/HTPC: Mac Mini 3,1 late 2009 | My Book Studio 2TB | LG M237WD monitor/tv | Logitech Z4 | Apple Magic Mouse | Apple Wireless Keyboard | Apple Remote
Mobile: Samsung Galaxy Wonder i8150 cm9
LinkedIn
-hide- è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema Insta360 Luna Ultra: la potenza del sensore da 1...
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
SpaceX ha confermato che Flight 14 sar&a...
Googlebook pronto al debutto: Google apr...
Guida all'acquisto: quale lavapavimenti ...
Google Maps su Android Auto introduce fi...
AMD Ryzen 5 5500F: fino al 16% di presta...
L'ecosistema partner di Microsoft cresce...
Oracle registra un boom nella divisione ...
Amazon Prime Video sfida TikTok con le n...
L'uscita di Rayman Legends Retold &egrav...
Dazio UE sui pacchi extra UE, in Italia ...
La nuova lavatrice smart di Xiaomi ha tr...
Hai una PSP nel cassetto? Questo nuovo p...
Oracle presenta Java 27 con diverse novi...
Il microscopio dell'EPFL vede più...
Volvo avvia la produzione dei nuovi cami...
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: 02:22.


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