Functions

td1.cc File Reference

Correction du TD 1. More...

#include <iostream>
Include dependency graph for td1.cc:

Go to the source code of this file.

Functions

int & hop (int &x)
 1.a Fonction identité
int & hip (int t[], int i)
 1.b Accès à un tableau
void byte_print (long l)
 2.a et 2.d Affichage d'un entier long octet par octet
void byte_swap (void *p, void *q)
 2.b Echange le contenu des octets pointés
void big_to_little (long &l)
 2.c Echange l'ordre des octets
unsigned f (unsigned n, unsigned x, unsigned y)
 3 Calcule le n-ème terme d'une suite à la Fibonacci
unsigned f (unsigned n, unsigned x=0u)
 3 Calcule le n-ème terme d'une suite à la Fibonacci
int main ()

Detailed Description

Correction du TD 1.

Ce fichier contient les solutions du TD 1, question 2.e et 2.f exceptées

Definition in file td1.cc.


Function Documentation

void big_to_little ( long &  l  ) 

2.c Echange l'ordre des octets

Parameters:
l le long dont il faut échanger les octets

Definition at line 109 of file td1.cc.

void byte_print ( long  l  ) 

2.a et 2.d Affichage d'un entier long octet par octet

2.a Pour accéder aux octets, on utilise des unsigned char qu'on transtype en unsigned int au moment de l'affichage

2.d Pour configurer le flot au début de la fonction et le remettre en état automatiquement à la fin, on crée un objet (automatique) dont le constructeur et le destructeur (appelé lors de la destruction, donc à la fin du bloc) agissent sur le flot.

Parameters:
l l'entier à afficher

Definition at line 75 of file td1.cc.

void byte_swap ( void *  p,
void *  q 
)

2.b Echange le contenu des octets pointés

La seule chose à savoir, c'est qu'on ne peut pas déréférencer des void*.

Parameters:
p adresse du premier octet
q adresse du second octet

Definition at line 98 of file td1.cc.

unsigned f ( unsigned  n,
unsigned  x = 0u 
)

3 Calcule le n-ème terme d'une suite à la Fibonacci

Cette fonction est une spécialisation pour un ou deux argument de la fonction générale de même nom. Sachant que le second argument n'a pas le même sens dans cette fonction que dans la fonction générale, on ne peut pas effectuer cette spécialisation simplement en fixant des valeurs par défaut pour les deux derniers arguments de la fonction à trois arguments (comprenne qui pourra).

Parameters:
n le rang du terme à calculer
x le terme u[1]
Returns:
la valeur calculée !

Definition at line 146 of file td1.cc.

unsigned f ( unsigned  n,
unsigned  x,
unsigned  y 
)

3 Calcule le n-ème terme d'une suite à la Fibonacci

Parameters:
n le rang du terme à calculer
x le terme u[0]
y le terme u[1]
Returns:
la valeur calculée !

Definition at line 123 of file td1.cc.

int& hip ( int  t[],
int  i 
)

1.b Accès à un tableau

Il n'y a pas besoin de passer le tableau par référence, puisque t est en fait un pointeur sur le tableau d'origine, ni l'indice i, dont c'est uniquement la valeur qui nous intéresse.

Parameters:
t un tableau
i un indice dans ce tableau
Returns:
une référence sur la valeur contenue en t[i]

Definition at line 56 of file td1.cc.

int& hop ( int &  x  ) 

1.a Fonction identité

Pour que la valeur de retour d'une fonction soit une "lvalue", c'est-à-dire affectable, il faut qu'il s'agisse d'une référence (ou d'un pointeur qu'on déréférence). Pour que la fonction agisse sur la variable x, il ne faut aucune copie, donc l'argument de hop doit etre passé par référence.

Parameters:
x une référence sur un entier
Returns:
une référence sur ce même entier

Definition at line 41 of file td1.cc.

int main (  ) 

Definition at line 150 of file td1.cc.

 All Classes Namespaces Files Functions Variables Typedefs Friends