Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

turpitudes du c : prototype de fonction erreur de code ou erreur avec l'ide geany sur ubuntu

16 réponses
Avatar
bpascal123
Bonjour cyberespace,
je viens de me rendre compte que quand je d=E9clare le prototype de la
fonction suivante :

15: void CheckFile(FILE *FP_FILE) ;

le message de precompilation :

gcc -Wall -o "exPract1" "exPract1.c" (in directory: /media/XP/code_c)
exPract1.c: In function =91main=92:

exPract1.c:15: note: expected =91struct FILE *=92 but argument is of type
=91char *=92

Compilation finished successfully.

Je r=E9p=E8te des exercices beaucoup de fois avec des noms de variables ou
fonctions diff=E9rents alors peut-=EAtre (tr=E8s probablement) j'ai d=E9j=
=E0
utilis=E9 le nom CheckFile comme nom de fonction. Mais aucun souvenir
d'y avoir d=E9clar=E9 une structure comme param=E8tre... Mon ide est geany.
Peut-=EAtre CheckFile est dans le cache de l'ide???

Ce qui me fait supposer que =E7a vient de l'ide est que si je change de
nom, par exemple : CheckMyFile, =E7a fonctionne sans messages...

Quelqu'un quelque part peut-il m'expliquer?

Merci,

6 réponses

1 2
Avatar
Wykaaa
Tonton Th a écrit :
On 10/04/2010 12:34 AM, Wykaaa wrote:

Et puis les professionnels savent bien qu'il faut respecter le principe
du KISS (Keep It Short and Simple).



"Simple ans Stupid".



Le sens que j'ai indiqué est celui qui est utilisé en logiciel :
http://www.ventsolaire.net/lexique-internet#kiss
Egalement pour le courriel (voir le glossaire en bas de page):
http://www.bit.admin.ch/dokumentation/00090/00156/00205/00207/index.html?langÞ

Il y a même un livre :
http://www.amazon.com/Kiss-Short-Simple-Jacquie-Ream/dp/1887542213

On peut multiplier les exemples.
Avatar
Samuel DEVULDER
Le 04/10/2010 21:22, Wykaaa a écrit :
Tonton Th a écrit :
On 10/04/2010 12:34 AM, Wykaaa wrote:

Et puis les professionnels savent bien qu'il faut respecter le principe
du KISS (Keep It Short and Simple).



"Simple ans Stupid".





Je crois que les deux sont acceptés. A noter que short & simple est un
poil redondant et que "stupid" ne désigne pas la qualité du code, mais
celle de celui qui ne respecte pas ce principe:
http://en.wikipedia.org/wiki/KISS_principle
Ca rentre très bien dans le principe d'Extreme Programing.

sam.
Avatar
Antoine Leca
Samuel DEVULDER écrivit :
A noter que short & simple est un poil redondant



Euh ? Des contre-exemples : APL, IOCCC, ou les exemples de la
documentation Microsoft.


Antoine
Avatar
Marc Boyer
Le 04-10-2010, Tonton Th a écrit :
On 10/04/2010 12:34 AM, Wykaaa wrote:
Et puis les professionnels savent bien qu'il faut respecter le principe
du KISS (Keep It Short and Simple).



"Simple ans Stupid".



A mon sens, il y a deux notions parentes mais distinctes.
En réseau par exemple, le KISS signifie "KI Simple and Stupid",
en parlant du coeur du réseau, avec comme volonté de repousser
l'intelligence sur la bordure du réseau (TCP par exemple n'est
ni simple ni stupid).

Le logiciel, lui, ne peut pas repousser l'intelligence.
Par contre, il peut essayer de la découper en briques
"Short and Simple".

Ceci dit, en général, le logiciel manipule des problèmes
simples mais gros, et l'objectif "Simple and Stupid" est
raisonnable.

Marc Boyer
--
En prenant aux 10% des francais les plus riches 12% de leurs revenus,
on pourrait doubler les revenus des 10% les plus pauvres.
http://www.inegalites.fr/spip.php?article1&id_mot0
Avatar
Samuel DEVULDER
Le 05/10/2010 08:53, Antoine Leca a écrit :
Samuel DEVULDER écrivit :
A noter que short& simple est un poil redondant



Euh ? Des contre-exemples : APL, IOCCC, ou les exemples de la
documentation Microsoft.



J'ai écrit un poil.. Chacun choisit la taille de son poil :)

Pour des contres exemples dans l'autres sens, googliser autour du terme
"snippet".

sam.
Avatar
Samuel DEVULDER
Le 05/10/2010 09:39, Marc Boyer a écrit :
Le 04-10-2010, Tonton Th a écrit :

Le logiciel, lui, ne peut pas repousser l'intelligence.
Par contre, il peut essayer de la découper en briques
"Short and Simple".



C'est ce qu'on retrouve dans la stratégie "diviser pour regner" /
"divide and conquiert". Pour certains problèmes, il ne faut les attaquer
de front en un bloc, mais parfois il faut le découper en des bouts plus
simples pour en venir à bout.

sam.
1 2