Recueil de codes C et C++

Fvirtman creation

Mise à jour : 25 Avril 2017

Voir version :

   1. Langage C       1.1. stdio.h          1.1.1.Utilisation avancée de printf.   (printf)          1.1.2.Utilisation avancée de scanf.   (scanf)          1.1.3.Ecrire dans un fichier texte.   (fopen,fprintf,fclose)          1.1.4.Ecrire et relire un fichier texte de deux manières.   (fscanf,fgets)          1.1.5.Ecrire et relire un fichier binaire.   (fread,fwrite)          1.1.6.Copier un fichier quelconque en passant par un tableau   (fread,fwrite)       1.2. stdlib.h          1.2.1.Trier des données en C.   (qsort)          1.2.2.Trier des structures complexes en C.   (qsort)          1.2.3.Récupérer une variable d'environnement avec une fonction.   (getenv)          1.2.4.Récupérer une variable d'environnement depuis le main.          1.3. string.h          1.3.1.Recopie,concaténation.   (strcpy,strlen,strcat)          1.3.2.Découper une chaine en plusieurs morceaux selon des critères.   (strtok)       1.4. math.h / time.h          1.4.1.Opérations mathématiques.   (sqrt,log,cos)          1.4.2.La date et l'heure.   (time ,localtime,asctime )          1.4.3.Mise en forme de la date.   (strftime)       1.5. winsock2.h / socket.h          1.5.1.Le réseau : un chat simple.   (socket, bind, listen, connect, accept)          1.5.2.Envoyer un mail   (Protocole SMTP)       1.6. io.h et direct.h          1.6.1.Lister les fichiers d'un répertoire.   (_findfirst,_findnext,_chdir)       1.7. conio.h / crtdbg.h          1.7.1.Detection non bloquante de frappe clavier.   (kbhit,getch)          1.7.2.Taper un mot de passe avec des ****   (getch)          1.7.3.Un scanf avec un compte à rebours actif.   (getch,kbhit,time.h)          1.7.4.Detection des fuites mémoires avec crtdbg.h   (_CrtSetBreakAlloc, _CrtDumpMemoryLeaks)       1.8. Autres concepts.          1.8.1. Au coeur de la mémoire.             1.8.1.1.Opérations sur les bits.   (operators ~ ^ & | << >>)             1.8.1.2.Gestion de flags.   (opérateurs & et |)             1.8.1.3.Structures compactes.   (operator :)             1.8.1.4.Divisions de différents types.   (operator /)             1.8.1.5.Alignement mémoire.                1.8.1.6.Endianness.             1.8.2. Concepts au niveau des fonctions             1.8.2.1.Récursivité.                1.8.2.2.Pointeurs de fonctions.                1.8.2.3.Fonctions à arguments variables.   (stdarg.h)             1.8.2.4.Ancienne façon de passer des paramètres.             1.8.3. Autres syntaxes du C.             1.8.3.1.Les trigraphes   (??)             1.8.3.2.Partager la mémoire entre plusieurs variables.   (union)             1.8.3.3.Sauter plus loin dans le programme.   (goto)             1.8.3.4.Fonctions d'arret d'un bout de code.   (continue, break, return, exit)             1.8.3.5.Opérateur ternaire.   (?)          1.8.4. Quelques algos utiles.             1.8.4.1.Echange de variable rapide.   (^)             1.8.4.2.Tableau de nombres aléatoires sans doublons.   (rand)             1.8.4.3.Mélanger un tableau rapidement.   (Fisher–Yates shuffle)       1.9. Manipuler nativement des fichiers connus.          1.9.1.Lire et écrire des fichiers image PPM             1.9.2.Lire et écrire des fichiers image BMP             1.9.3.Ecrire des fichiers WAV.          1.10. Algorithmes          1.10.1.Générateur aléatoire de labyrinthe       2. La librairie SDL.       2.1. Blit et mouvements.          2.1.1.Multiple Blit.   (SDL_LoadBMP,SDL_BlitSurface)          2.1.2.Blit à coordonnées négatives.   (SDL_BlitSurface)          2.1.3.printf pour SDL             2.1.4.Scrolling simple.             2.1.5.Scrolling horizontal et vertical.          2.2. Concepts 2D          2.2.1. Sprites.             2.2.1.1.Déplacer plusieurs objets en même temps.                2.2.1.2.Saut pour jeu de plateforme.                2.2.1.3.Déplacement et animation de personnages.          2.2. Concept de sprites.          2.2.1.Déplacer plusieurs objets en même temps.             2.2.2. Terrains.             2.2.2.1.Simple TileMapping droit.             2.2.2.Saut pour jeu de plateforme.             2.2.3.Déplacement et animation de personnages.          2.3. Accès aux pixels.          2.3.1.Dessiner des pixels.   (SDL_LockSurface)          2.3.2.Afficher un dégradé de couleurs.             2.3.3.Tracer des segments.   (Bresenham)          2.3.4.Tracer des formes.   (Bresenham)          2.3.5.Fractale de Mandelbrot.   (Mandelbrot)          2.3.6.Créer de fausses couleurs.   (Dithering)          2.3.7.Tracer des fonctions cartésiennes.             2.3.8.Tracer des fonctions paramétriques.             2.3.9.Tracer des courbes de Bézier.             2.3.10.Redimensionner une image             2.3.11.Courbe Spline             2.3.12.Rotations, mises à l'échelle, déplacement, transformations de textures à partir des pixels.             2.3.13.Illustration de tables de multiplication          2.4. Extensions.          2.4.1.ttfcompiler : Création d'images avec des caractères de texte.   (SDL_ttf)       2.5. Petits jeux.          2.5.1.Un Tetris rudimentaire.       3. Langage C++.       3.1. Concepts.          3.1.1.Class basique.   (class)          3.1.2.Les opérateurs surchargés.   (operator)          3.1.3.Davantage d'opérateurs surchargés.   (operator)          3.1.4.Normaliser une classe.   (classe de Coplien)          3.1.5.Héritage.             3.1.6.Portée des méthodes et données.   (operator ::)          3.1.7.Protection des classes et des données.   (const)          3.1.8.Héritage virtuel.   (virtual)          3.1.9.Placement new   (new())          3.1.10.Interdire les recopies de classes.   (private)          3.1.11.Donnée membre static.   (static)          3.1.12.Pointeurs sur méthode          3.2. Streams.          3.2.1.stream de sortie, utilisation de cout.   (cout)       3.3. String.          3.3.1.simple string.   (cout)       3.4. STL.          3.4.1.Les listes.   (list)          3.4.2.Les vector.   (vector)          3.4.3.Les deque.   (deque)          3.4.4.Les piles et les files.   (stack, queue)          3.4.5.Les files de priorité   (priority_queue)          3.4.6.Personnaliser le tri.   (functors)          3.4.7.Ensembles triés.   (set)          3.4.8.Les tables associatives.   (map)       3.5. Boost.          3.5.1. array.             3.5.1.1.Simple array.   (boost::array)             3.5.1.2.multi array.   (boost::multi_array, boost::extents)          3.5.1. Utility.             3.5.2.1.Empêcher une classe d'être recopiable   (boost::noncopyable)    4. L'API Windows.       4.1. Fenêtres standard.          4.1.1.Simple message Windows.   (TCHAR , MessageBox)          4.1.2.Fenêtre Charger/Sauver.   (GetOpenFileName,GetSaveFileName)          4.1.3.Fenêtre choix de couleur   (ChooseColor)          4.1.4.Fenêtre choix de police   (ChooseFont)          4.1.5.Fenêtre choix de répertoire.   (SHBrowseForFolder)          4.1.6.Afficher la fenêtre About.   (ShellAbout)       4.2. Gestion console.          4.2.1.Couleurs et placement.   (SetConsoleTextAttribute,SetConsoleCursorPosition,SetConsoleTitle)          4.2.2.Accents sous la console Windows.   (setlocale)          4.2.3.Enumérer les code pages.   (EnumSystemCodePages)          4.2.4.Convertir une chaîne pour avoir les accents.   (CharToOem)          4.2.5.Un jeu labyrinthe ou on peut se déplacer en console.   (getch, SetConsoleCursorPosition)          4.2.6.Un Puissance 4 en console             4.2.7.Un 2048 en console             4.2.8.Afficher des pixels dans la console   (SetPixel)          4.2.9.Utiliser la Souris dans la console, un petit Paint.   (ReadConsoleInput)          4.2.10.Un petit Shoot em up en console             4.2.11.Savoir quelles touches sont enfoncées.   (GetKeyState)       4.3. Multithreading.          4.3.1.Utilisation de threads.   (CreateThread)          4.3.2.Passage de paramètres à des threads.             4.3.3.Utilisation des mutex.   (CreateMutex)          4.3.4.Créer des processus.   (CreateProcess)       4.4. Mémoire et lecteurs.          4.4.1.Lister tous les lecteurs connectés.   (GetLogicalDrives)          4.4.2.Informations sur les lecteurs.   (GetVolumeInformation)          4.4.3.Requête mémoire disponible.   (GlobalMemoryStatus)       4.5. Accès aux processus.          4.5.1.Récupérer PID courant et gestion de priorité.   (GetCurrentProcess,GetCurrentProcessId,SetPriorityClass)          4.5.2.Récupérer liste processus et nom de l'EXE associé.   (EnumProcesses,OpenProcess,GetProcessImageFileName)       4.6. Informations système.          4.6.1.Récupérer la résolution de l'écran   (GetSystemMetrics)          4.6.2.Informations sur les moniteurs   (EnumDisplayMonitors, GetMonitorInfo)          4.6.3.Chronomètre précis.   (timeGetTime)          4.6.4.Trouver le programme associé à un type de fichier dans Windows   (AssocQueryString)       4.7. Accès à Internet.          4.7.1.Télécharger un fichier.   (URLDownloadToFile)          4.7.2.Télécharger un fichier en utilisant une dll.   (urlmon.dll)          4.7.3.Envoyer un fichier sur un serveur FTP.   (InternetOpen, InternetConnect, FtpPutFile, InternetCloseHandle)       4.8. Souris et Joysticks sous Windows.          4.8.1.Faire cliquer la souris à un endroit choisi.   (SendInput)          4.8.2.Récupérer les coordoonnées de la souris.   (GetCursorPos)          4.8.3.Restreindre le curseur de souris dans une zone.   (ClipCursor)          4.8.4.Utiliser un joystick ou joypad sous Windows   (joyGetNumDevs, joyGetPosEx)       4.9. Sons sous Windows.          4.9.1.Les sons standard Windows.   (MessageBeep)          4.9.2.Jouer un son au speaker selon une fréquence.   (Beep)          4.9.3.Jouer un MP3.   (mciSendString)          4.9.4.Utiliser le synthétiseur intégré.   (midiOutShortMsg)          4.9.5.Simulation vocale, la machine vous parle.   (ISpVoice_Speak)       4.10. Le presse papier.          4.10.1.Copier du texte dans le presse papier.   (SetClipboardData)          4.10.2.Récupérer du texte depuis le presse papier.   (GetClipboardData)          4.10.3.Récupérer et afficher une image depuis le presse papier.   (GetClipboardData, SetPixel, BITMAPV5HEADER)       4.11. Sessions.          4.11.1.Verouillier la Session.   (LockWorkStation)          4.11.2.Quitter la session.   (ExitWindows)          4.11.3.Récupérer le nom de l'ordinateur, et le nom de l'utilisateur actif.   (GetComputerName,GetUserName)       4.12. Création de fenêtres à l'aide de fichiers rc.          4.12.1.Création d'une fenêtre simple   (DialogBox)          4.12.2.CheckBox, boutons, boutons radios, et zone de texte   (DialogBoxParam,SendMessage)       4.12. Utilisation du GDI+ (Graphic Device Interface)          4.13.1.Sauver un JPEG depuis le presse papier   (GDI+)    5. La librairie OpenGL.       5.1. Concepts de base.          5.1.1.Un triangle et un Quad.   (glVertex3f,gluPerspective,gluLookAt,glTranslatef...)       5.2. Textures.          5.2.1.Test de mipmapping.   (gluBuild2DMipmaps,glTexParameteri)

Contact : fvirtman AT hotmail.com

Builder automatique par Fvirtman, utilise la librairie externe Colorer-take5.be5

Retour