Pfff le C/C++ c'est dur

l’important de toute facon c’est que tu comprennes ce que tu fasses et qu’à la fin ca marche :stuck_out_tongue: Après si les autres peuvent piger c’est un “plus” s’ils doivent reprendre ton code derrière ^^.

C’est pas du code qui seras repris.

J’ai déjà pas mal appris de chose avec ce prog, rien que sur les allocations mémoire.

Merci beaucoup

sisi, ptet bien par toi dans un ou 2 mois et à ce moment la tu seras bien content d’avoir un truc “tout fait”:stuck_out_tongue:
Et sinon sans mauvais esprit (j’ai apris avec au départ) le “Site du Zéro” est po trop mal pour vérifier qu’on a capté, t’as un ptit “cours” et un questionnaire à la fin. C’est pas absolument incontournable mais ca peut aider (au début hein c’est vite limité sur certains trucs quand même ^^).

Perso je connais vraiment rien au C++ (le C par contre c’est autre chose) mais j’ai vraiment rien compris, si c’est ça le C++, … ben c’est super tordu je lui préfère le C de loin.

Après c’est qu’un avis sans troll sous-jacent d’une personne qui connait qu’un coté du tableau.

Tu fais quel genre d’étude pour qu’ils veuille pas te faire passer par le C dans ton apprentissage ?

@+

Je ne suis qu’un humble padawan ne juge pas ce langage par mon code. Le système en C++ c’est pas top parce que les fonctions systèmes sont en C.
Pour vraiment faire du C++ comme il faut, il faudrait qu’on nous donne bien plus de temps et qu’on ne se limite pas à faire des wrappers de fonctions système. Si tu veut je te montrerais ma classe CRep, quand je l’aurais finis c’est une encapsulation objet du C. Donc ça s’utilise comme ça :

[code]CRep Dir ("/home/yoko");
Dir.open();
for(CRep::iterator I (Dir.begin()); I < Dir.end(); ++I)
// parcour du répertoire

Dir.close();[/code]
(je réfléchie encore à la manière de gérer la lecteur (j’aimerais bien faire un itérateur).

IUT informatique
Dans l’apprentissage la part du C a nettement diminué j’ai l’impression beaucoup ne parle plus que de java.

Perso j’ai commencé par le java avec une classe “Deug” prémachée … vu que l’année qui a suivi on n’y avait plus droit c’était assez n’importe quoi, je trouve, de nous faire bosser avec ca au début (tout ca pour faire du “Deug.println()” au lieu de “System.out.println()” grosso modo … )Et on a fini par aborder le C en 2ème année, avec un prof mou du genou (tout apris sur les bouquins question C cette année la). Puis en 3èle année on a enfin fait du C, et la en master on s’attaque gentiment aux processus et signaux ca commence à devenir marrant =).
Ceci dit je suis d’avis de dire que le java est un “premier langague” certainement plus facile d’accès pour beaucoup (dans mon deug on avait des physiciens des matheux et des programmeurs en herbe) que le C, vu que java s’occupe d’à peu près tout ce qui concerne la gestion de la mémoire … on peut donc se concentrer tranquilement sur sa suite de fibonacci récursive ou le trajet des fantomes de son pacman, sans s’embéter avec les mallocs realloc et autres free (bah ouais les fuites de mémoire c’est le mal :stuck_out_tongue:).
N’empêche que j’en voudrais toujours au type qui a “commis” la classe Deug dans ma fac (paris 7). Parcequ’en arrivant en 2ême année j’ai du réapprendre presque tout à cause des automatismes prémâchés que j’avais pris l’an passé.
Le C n’est pas “sorcier” en lui même mais il faut, m’est avis, quelques bases pour bien saisir ce que l’on écrit, je me gourre encore régulèrement entre les ‘*’ et les ‘&’ quand j’ai besoin de déréférencer un pointeur ou ce genre de trucs (et ca m’enneeeeeeerve :stuck_out_tongue:).

C’est ce que je fais… en deuxième année.

En première année on a commencer avec des cours d’algo/programmation. L’idée du cours c’était de connaître les mécanismes de base de programmation (qu’est ce qu’une boucle ? qu’est ce qu’une classe ? Qu’est ce qu’une fonction récursive ? Qu’est ce que la surcharge d’opérateur ? les functors ? quelques algo de recherche et une initiation à la structure de donnée), l’idée c’était de pouvoir programmer et de se former l’esprit. Maintenant en seconde année en système on voit des trucs plus technique, plus proche de l’implémentation, donc plus proche du C. A oui on a aussi vu les pointeur (obligé pour faire de la structure de donnée).
Pour ce qui était du système et réseau en première année on a surtout appris à s’en servir (et à faire des petits scripts tcsh).

J’ai plus ou moins finis mon exo (pour vous donner une idée on a pas vu les allocations mémoire en cours et la solution du prof l’imite le nombre d’argument à 10 (et oui pas de réalocation mémoire)). On va bientôt attaquer le réseau ou on va apprendre encore quelques trucs sur le C puis on passeras au PHP (vous parlez d’une différence ?).

En première année on a vu aussi un peu de Java en cours d’IHM et de maple en maths. Là on est entraint d’apprendre du PL/SQL pour bosser avec Oracle (on a vu déjà une bonne partie du SQL de la simple projection à la division en passant par les vues).

En 900h d’informatique personnellement je trouve que le programme est pas trop mal foutu (c’est les prof qui le son (ils se battent pour savoir comment c’est bien programmé)).

Bah apres le C tu vas te reposer en php :stuck_out_tongue:. Peu ou pas de typage, définitons de variables à la volée … C’est pas trop fatigant, mais faut faire attention a ce que tu écris la aussi . C’est limite encore plus vrai en php dans la mesure ou comme ce que tu écris est très peu contrôlé si tu te gourres tu peux quand même obtenir un résultat … mais qui ne veut alors pas dire grand chose même si ce que tu lis en testant te semble crédible (enfin ca c’était mes mauvaises surprises quand on m’a fait coder ma petite calculette php toute naze en 2eme année XD)

php, perl, ruby, python même combat. :laughing:

Entierement d’accord c’est vrai qu’une fois qu’on sait coder en C (enfin savoir coder çà veut a la fois tout et rien dire) çà nous donnes un grand coup de pouce en php tu va limite trouver çà aussi simple que du shell (sauf que tu rajoutes une couche d’abstraction objet avec ) par contre ce que j’ai remarqué c’est qu’une fois qu’on s’est mis au C++ essayer de reprendre le C genre deux mois aprés et çà va vous faire bizarre.

Je crois que le pire que j’ai connus en C c’est même pas le segfault mais le core dumped par exemple

char *s = "tata";
char v[] = "toto";

*s = 'A';

==> segmentation fault (core dumped)
ce genre de chose on a beaucoup de mal à le rationnaliser au debut mais bon aprés comme tout çà finira par rentrer avec le temps :wink:

Le chox doit être encore plus grand pour les programmeur eiffel. :laughing:

gné ? tu parles de l’école gustave eiffel ou rien à voir ? :laughing:

fr.wikipedia.org/wiki/Eiffel_(langage

==> [ ] :blush:

C’est le langage le plus fortement typé que je connaisse. :wink:

Pour moi, c’est ada, parceque je ne connais pas eiffel, mais bon, coté typage, c’est kifkif: l’un a inspiré l’autre.

les langages ML genre caml / ocaml sont rigolos aussi dans le genre ^^. Apres j’ai pas encore expérimenté l’ada ou le eiffel.