Modification de la version unsecured en PearProgramming avec Lenny
This commit is contained in:
parent
abd096bb21
commit
9373aa5f6a
@ -23,18 +23,21 @@ void read_account(int fd, int index, char *name, int *balance) {
|
||||
void write_account(int fd, int index, const char *name, int balance) {
|
||||
char buffer[ACCOUNT_SIZE];
|
||||
|
||||
// Créer une chaîne formatée avec une largeur fixe
|
||||
snprintf(buffer, ACCOUNT_SIZE - 1, "%-10s%4d", name, balance);
|
||||
// Formater la chaîne avec un nom de 10 caractères et un solde de 5 caractères, espace rempli si nécessaire
|
||||
snprintf(buffer, ACCOUNT_SIZE, "%-10s%5d", name, balance);
|
||||
|
||||
// Assurer que le buffer termine par '\n'
|
||||
buffer[ACCOUNT_SIZE - 1] = '\n';
|
||||
// S'assurer que le buffer est exactement de taille ACCOUNT_SIZE
|
||||
// Ajouter des espaces si nécessaire pour remplir la ligne
|
||||
for (int i = strlen(buffer); i < ACCOUNT_SIZE - 1; i++) {
|
||||
buffer[i] = ' ';
|
||||
}
|
||||
buffer[ACCOUNT_SIZE - 1] = '\n'; // Assurez-vous que la ligne est terminée correctement
|
||||
|
||||
// Positionner et écrire dans le fichier
|
||||
lseek(fd, index * ACCOUNT_SIZE, SEEK_SET);
|
||||
write(fd, buffer, ACCOUNT_SIZE);
|
||||
}
|
||||
|
||||
|
||||
// Fonction pour effectuer une transaction
|
||||
void perform_transaction(int fd, int account_count) {
|
||||
int from_idx = rand() % account_count;
|
||||
@ -159,6 +162,10 @@ int main(int argc, char *argv[]) {
|
||||
}
|
||||
printf("Solde total final : %d€\n", final_balance);
|
||||
|
||||
if (initial_balance != final_balance) {
|
||||
printf("Le solde final est différent du solde initial...\n");
|
||||
}
|
||||
|
||||
printf("Tout les processus sont terminés !\n");
|
||||
|
||||
return 0;
|
||||
|
Loading…
x
Reference in New Issue
Block a user