• Benvenuto in Making Videogames!
  • Dai sfogo alla tua fantasia!
  • Crea il tuo Videogioco!
Benvenuto ospite! Login Registrati




Valutazione discussione:
  • 1 voto(i) - 5 media
  • 1
  • 2
  • 3
  • 4
  • 5
Inizio nuova serie di tutorial sul C
#4
(04-06-2014, 09:24 PM)steve Ha scritto: What?! Premesso che non ho visto tutto il video, ho cercato solo la parte citata da Lorenz per vedere se dicevi qualcosa a riguardo. Sta roba:
Codice:
public void ciao()
{
}
Non è C. In C non esiste proprio la keyword public, esiste in C++ e comunque sia non si usa in quel modo.
A dire il vero anche la spiegazione di Lorenz è sbagliata: il C è case-sensitive quindi PUBLIC e public sono due cose completamente diverse e poi PUBLIC non è definito da nessuna parte nelle librerie standard. Potrei sbagliarmi, ma non credo, comunque son sicuro che non c'è né in stdlib.h e né in stdio.h (ho controllato).

Il fatto che devcpp ti faccia compilare quella roba ti dimostra che è meglio cambiarlo, ti insegna cose sbagliate. Prova codeblocks con le mingw.
Il mio discorso deriva da questo ->
Giusto la keyword public non è giusta ma il mio discorso vale per la keyword PUBLIC che come spiega il The Minix Book Operating Systems Design and Implementation a pagina 140 (qui) equivale a non metterlo
Citazione:PRIVATE is defined as a synonym for static. Procedures and data that are not referenced outside
the file in which they are declared are always declared as PRIVATE to prevent their names from
being visible outside the file in which they are declared. As a general rule, all variables and
procedures should be declared with a local scope, if possible. PUBLIC is defined as the null string.
An example from kernel/proc.c may help make this clear. The declaration
PUBLIC void lock_dequeue(rp)
comes out of the C preprocessor as
void lock_dequeue(rp)
which, according to the C language scope rules, means that the function name lock_dequeue is
exported from the file and the function can be called from anywhere in any file linked into the
same binary, in this case, anywhere in the kernel.
Ad ogni modo la keyword sia public sia PUBLIC non sono parte dell'ansi c quindi il discorso sopra non è applicabile.
Riassunto Steve ha ragione.
 
Rispondi
  


Messaggi in questa discussione
RE: Inizio nuova serie di tutorial sul C - da Lorenz - 04-06-2014, 10:30 PM

Discussioni simili
Discussione Autore Risposte Letto Ultimo messaggio
  chiarimento sul c++ SuperMario64 2 1,101 27-05-2012, 07:18 PM
Ultimo messaggio: SuperMario64

Vai al forum:


Browsing: 1 Ospite(i)