Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco
Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco
Nelle ultime settimane abbiamo provato il mouse Logitech G305, la tastiera G316 X 98 e le cuffie G325. Si tratta del setup entry-level di Logitech che ormai, di "entry-level" ha ben poco. Tastiera e mouse offrono prestazioni di livello competitivo con quasi nessuna rinuncia e un livello di personalizzazione estremamente elevato. Le cuffie, invece, hanno mostrato qualche debolezza, ma propongono un ventaglio di funzionalità completo che consente di abbandonare completamente i cavi
Recensione POCO F9 pro: potenza da vero top di gamma, display da 185 Hz e finalmente una fotocamera da prendere sul serio
Recensione POCO F9 pro: potenza da vero top di gamma, display da 185 Hz e finalmente una fotocamera da prendere sul serio
POCO F9 Pro arriva sul mercato con l'obiettivo di portare prestazioni da smartphone top di gamma in una fascia di prezzo "più aggressiva", senza rinunciare a un comparto fotografico finalmente all'altezza. Dopo averlo testato sul campo, emerge uno smartphone molto più completo rispetto alla generazione precedente, ma anche con alcuni piccoli compromessi che diventano difficili da ignorare quando il prezzo di listino sfiora i 1.000 euro.
Tra audio e AI: la ricetta di Qualcomm per l'agentic AI
Tra audio e AI: la ricetta di Qualcomm per l'agentic AI
Snapdragon Soung Gen 2 è la piattaforma Qualcomm per i dispositivi audio sempre più integrati nel mondo dell'intelligenza artificiale: al prorpio interno tanta potenza elaborativa per gestire al meglio le necessità d'uso dell'agentic AI
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 22-09-2008, 21:40   #1
gianni.anz
Junior Member
 
Iscritto dal: Jun 2008
Messaggi: 9
[C] include "nome_file.c"

Ciao ragazzi, ho un piccolo problema:

Non capisco!! Devo fare un piccolo prg,. in C. Bene, ho deciso di spezzarlo in tre parti. Nella prima parte ho il main, nella seconda ho il B e nella terza ho il prog C. Il main chiama il prg B. ok! il B e il main devono chiamare il C.

problema

# include "C.c" lo devo inserire nel main e nel B? o basto solo inserirlo nel main e nel B il riconoscimento è automatico? Oppure, se lo chiamo in B, lo posso anche chiudere, in qualche modo, in modo tale che sia sempre disponibile anche per altri prog?

Grazie
gianni.anz è offline   Rispondi citando il messaggio o parte di esso
Old 22-09-2008, 22:06   #2
ndakota
Senior Member
 
L'Avatar di ndakota
 
Iscritto dal: Oct 2006
Città: milano
Messaggi: 1439
non penso si possano includere file .c puoi al limite includere file .h dove sono presenti funzioni c e chiamare nel tuo programma codeste funzioni.. ciao
ndakota è offline   Rispondi citando il messaggio o parte di esso
Old 22-09-2008, 22:17   #3
sebaldar
Junior Member
 
Iscritto dal: Aug 2008
Messaggi: 8
in linea di principio la direttiva del preprocessore #include sostituisce pari pari a questa riga il contenuto del file specificato, non importa di che file si tratti, in pratica viene utilizzato principalmente per includere i file header, quei file che contengano le intestazioni delle funzioni.
Dovresti riguardarti i primi capitoli del testo che stai utilizzato e comprendere la differenza tra file sorgente e file header che in C e C++ ha grande importanza.
ciao
sergio
sebaldar è offline   Rispondi citando il messaggio o parte di esso
Old 22-09-2008, 22:18   #4
gianni.anz
Junior Member
 
Iscritto dal: Jun 2008
Messaggi: 9
ndakota
fammi capire. Io dovrei chiamare in file .h all'interno del quale ci sono tutte le procedure che mi necessitano? quindi, nel file B e main mi chiamo il file .h e la procedura interessata? Ma gli .h non sono solo dei prototipi? quindi non posso creare in essi una procedura?
gianni.anz è offline   Rispondi citando il messaggio o parte di esso
Old 22-09-2008, 22:22   #5
gianni.anz
Junior Member
 
Iscritto dal: Jun 2008
Messaggi: 9
sebaldar

Grazie Sergio. Mi hai 'tirato carne' insomma perchè non ho studiato!!
gianni.anz è offline   Rispondi citando il messaggio o parte di esso
Old 22-09-2008, 22:40   #6
ndakota
Senior Member
 
L'Avatar di ndakota
 
Iscritto dal: Oct 2006
Città: milano
Messaggi: 1439
esatto una situazione del genere.

file funzione.h
Codice:
#include <stdio.h>

void stampa(void)
{
    printf("ciao");
}
file main.c
Codice:
#include "funzione.h"

int main(void)
{
    stampa();

    return 0;
}
ndakota è offline   Rispondi citando il messaggio o parte di esso
Old 23-09-2008, 08:17   #7
gianni.anz
Junior Member
 
Iscritto dal: Jun 2008
Messaggi: 9
Ok ndakota
re-imposto tutto e seguo il tuo suggerimento, min sembra la cosa più logica da fare.

grazie
gianni.anz è offline   Rispondi citando il messaggio o parte di esso
Old 23-09-2008, 09:25   #8
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da ndakota Guarda i messaggi
esatto una situazione del genere.

file funzione.h
Codice:
#include <stdio.h>

void stampa(void)
{
    printf("ciao");
}
file main.c
Codice:
#include "funzione.h"

int main(void)
{
    stampa();

    return 0;
}
Questo non va bene. Solitamente non bisogna includere l'implementazione nel file .h, ma solo le dichiarazioni delle funzioni. Allora poteva includere anche il file .c
La forma corretta è:


file funzione.h
Codice:
#ifndef __FUNZIONE_H__
#define __FUNZIONE_H__

void stampa(void);

#endif
file funzione.c
Codice:
#include "funzione.h"
#include <stdio.h>

void stampa(void)
{
    printf("ciao");
}

file main.c
Codice:
#include "funzione.h"

int main(void)
{
    stampa();

    return 0;
}
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 23-09-2008, 16:25   #9
ndakota
Senior Member
 
L'Avatar di ndakota
 
Iscritto dal: Oct 2006
Città: milano
Messaggi: 1439
ops sorry non lo sapevo a scuola mi hanno fatto sempre fare in quel modo
ndakota è offline   Rispondi citando il messaggio o parte di esso
Old 23-09-2008, 17:59   #10
DanieleC88
Senior Member
 
L'Avatar di DanieleC88
 
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
Quote:
Originariamente inviato da ndakota Guarda i messaggi
ops sorry non lo sapevo a scuola mi hanno fatto sempre fare in quel modo
Malissimo! Metti questo caso: hai main.c, file1.c e header.h. Utilizzando quel metodo, definiamo in header.h:
Codice:
int f(int x)
{
  return (2 * x) + 3;
}
E in main.c e file1.c lo includiamo:
Codice:
#include "header.h"

/* ... */
Che succede se lanci gcc -W -Wall main.c file1.c -o ./eseguibile?
Codice:
/tmp/ccgO8xPX.o: In function `f':
file1.c:(.text+0x0): multiple definition of `f'
/tmp/cc8g7N9D.o:main.c:(.text+0x0): first defined here
E questo è ciò che succede con due file quasi vuoti. Pensa su progetti grossi...
__________________

C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai!
DanieleC88 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco Logitech G325, G305 e G316 X: il tris per chi no...
Recensione POCO F9 pro: potenza da vero top di gamma, display da 185 Hz e finalmente una fotocamera da prendere sul serio Recensione POCO F9 pro: potenza da vero top di g...
Tra audio e AI: la ricetta di Qualcomm per l'agentic AI Tra audio e AI: la ricetta di Qualcomm per l'age...
Qualcomm annuncia la nuova generazione di SoC Snapdragon 8 Elite Gen 6 Qualcomm annuncia la nuova generazione di SoC Sn...
realme 16 Pro Harry Potter Edition: il nuovo midrange ha uno stemma di Hogwarts che cambia colore al sole! realme 16 Pro Harry Potter Edition: il nuovo mid...
Eni mette un tetto ai prezzi dei carbura...
BYD Seagull (Dolphin Surf), l'elettrica ...
Multa milionaria per un data center del ...
F-Droid 2.0 si aggiorna con una nuova gr...
Microsoft ridisegna Copilot: dalla chat ...
Volkswagen porterà 20 videogiochi...
Troppa IA storpia: OpenAI licenzia in tr...
Marathon, Bungie svela i contenuti dell'...
Autunno, tempo di potature: i tagliasiep...
Meta Muse, due sviluppatori riescono a o...
Google AI Pro gratis: festa a sorpresa p...
MacSync colpisce macOS usando i calendar...
L'agente IA cancella 48 mila file in 103...
Jensen Huang avverte: l'AI può aiutare a...
Elettrico Renault in arrivo in Spagna: 6...
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: 22:21.


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