Printf

Format
Description
%d
Une donnée entière de type int
%3d
Une donnée entière de type int. Si la valeur est inférieure à 100, des caractères blancs sont ajoutés pour compléter sur 3 caractères.
%03d
Une donnée entière de type int. Si la valeur est inférieure à 100, des caractères 0 sont ajoutés pour compléter sur 3 caractères.
%ld
Une donnée entière de type long.
%lu
Une donnée entière de type long non signée.
%x
Une donnée entière affichée en héxadécimal (ff, par exemple).
%X
Une donnée entière affichée en héxadécimal et en majuscules (FF, par exemple).
%f
Une donnée décimale de type float.
%lf
Une donnée décimale de type double.
%5.2lf
Une donnée décimale de type double, affichée au total sur cinq caractères (. compris) et avec deux chiffres après le caractère de séparation.
%g
Une donnée décimale de type double, affichée de manière la plus compacte possible. Le choix entre la notation exponentielle ou décimale est automatiquement réalisé pour obtenir l’affichage le plus concis. La partie décimale n’apparait que si elle contient au moins un chiffre.
%c
Une donnée de type caractère.
%s
Une donnée de type chaîne de caractères.
%10s
Une donnée de type chaîne de caractères sur 10 caractères alignés par la droite.
%-10s
Une donnée de type chaîne de caractères sur 10 caractères alignés par la gauche.
%p
Une donnée de type adresse en mémoire. Cette adresse sera présentée sous forme hexadécimale.

本文为原创文章,转载请注明出处!

tables hash

/* tableau 9x T1 France */

static unsigned char T19x[256] = {
0x7F,0xEF,0xFD,0x2B,0x2D,0x58,0x38,0xA6,0xA8,0x55,0x2C,0xC4,0xBD,0xA7,0x6F,0x40,
0x60,0x1E,0x03,0xED,0xDB,0xF9,0x64,0xD8,0xB5,0xFF,0xBF,0x5C,0x75,0x94,0x3D,0x8E,0x76,0xE6,0x11,0x4A,0x69,0x4C,0xD0,0x0A,0x00,0x44,0xA3,0x14,0xE5,0x09,0x97
, 0xA2 0xBB 0x9B 0x5E 0x32 0xDF 0xC9 0x8F 0x86 0x90 0x6E 0xFA 0x68 0x0E 0xEE 0x47 0xAD 0x1F 0xB6 0xCC 0x20 0x29 0x74 0xA1 0xC0 0x71 0xFC 0x10 0x45

,0x65,0x4E,0xA5,0x2F,0x13,0x36,0xF7,0xE2,0xE7,0x83,0xC5,0xE4,0xAF,0x9D,0xEC,0x78,0x23,0x04,0x92,0x4B,0x34,0x7B,0xAE,0x7E,0xF8,0x84,0xF4,0x0C

, 0x77,0xCE,0x8C,0xD9,0xBE,0xD5,0xDE,0xCB,0x48,0xE8,0x6C,0xC7,0xBA,0x2E,0xFB,0xC2,0x35,0xD4,0x85,0x50,0x3E,0xD7,0x54,0x62
,
0xB8,0x82,0x22,0xF2,0x73,0x37,0x26,0xA4,0x5A,0x33,0x9C,0x30,0x5D,0x66,0x1B,0x08,0x12,0x07,0x01,0xB2,0xB4,0xE9,0x24,0x52,0x7A,0x0F,0xBC,0x43,0xD6,0xAC,0x89
, 0x15 0xEB 0x46 0xAA 0x99 0x1A 0x06 0x79 0x80 0x96 0x25 0x8B 0xC6 0xD2 0x98 0xC1 0xA0 0x42 0xFE 0x27 0x88 0xF6 0x4D 0x51 0x31 0x53 0xD1 0xB7

, 0x7C 0xA9 0x5F 0xC8 0xCD 0x3F 0x56 0xE3 0xE0 0x02 0xC3 0x05 0x59 0x4F 0x72 0xB1 0x3A 0xEA 0x6D 0x93 0x0D
,
0xDD,0x1C,0x41,0x61,0x81,0x91,0x6A,0x1D,0xB0,0x9A,0xD3,0xF1,0x5B,0xCA,0x70,0xDA,0x3B,0xB3,0x39,0x95,0x87,0x2A,0x3C,0x18,0xAB,0x28,0x63,0xF3,0xCF,0x57
, 0x67,0x49,0x8A,0x9E,0x0B,0xF0,0xF5,0x16,0x19,0x7D,0xE1,0x17,0xDC,0x21,0x9F,0x6B,0xB9,0x8D

};
/* tableau 9x T2 France */

static unsigned char T29x[256] = {
0x77,0x9F,0x52,0xF1,0x24,0xC1,0x87,0xB7,0xAE,0xFC,0xE6,0x82,0x62,0xBF,0xA0,0x9C,
0xCA,0xD7,0x8B,0x95,0x00,0x75,0x7B,0x39,0xAA,0x06,0x9B,0x92,0xF9,0x7D,0xBB,0x8A,0xB3,0x4A,0xDE,0x21,0x3D,0x86,0x5C,0x2D,0xA1,0x7E,0xD5,0xE0,0xCB,0xF4,0x90
, 0x58 0xB1 0x0F 0xB2 0xB4 0x89 0x30 0x79 0x34 0x0B 0xB0 0xE1 0xED 0xDA 0xCE 0x6D 0x12 0xD6 0xCD 0x6A 0xD3 0x1B 0xA3 0x68 0xA5 0xFD 0x85 0x64 0x1A

,0xC5,0x83,0x54,0x88,0xAC,0xBC,0xA7,0x70,0x4C,0x57,0x2C,0xEE,0x8F,0x49,0x0A,0xE3,0xEB,0x76,0xFF,0xC9,0x19,0x5B,0x7C,0x4F,0xBD,0x9E,0xDF,0xAF

, 0xD8,0xC3,0x5F,0x14,0xF5,0x38,0xB9,0x0C,0x9D,0x27,0x74,0xDD,0xFE,0x32,0xF6,0x63,0x2E,0x55,0xF3,0xDB,0xF2,0x78,0x45,0x5D
,
0x47,0x20,0x18,0x93,0x7A,0x2F,0x3E,0xE4,0x8E,0x46,0xD9,0x98,0xFA,0x13,0x60,0x36,0x84,0x51,0x6F,0x3A,0xAD,0xB5,0xC6,0x07,0x0D,0xA2,0x01,0xB8,0x40,0xEF,0xDC
, 0x11,0x4E,0xA6,0x56,0x1E,0xFB,0x10,0x72,0xB6,0x6C,0x1F,0x8D,0x65,0xF7,0x08,0xA4,0x2B,0x80,0x42,0x91,0x1C,0x35,0x53,0xF0,0xAB,0x9A,0x97,0xE8

, 0xA8,0x71,0x23,0xD1,0x03,0xCC,0x96,0x44,0x28,0xBE,0x33,0x29,0x4B,0x05,0xE2,0x3C,0x25,0x8C,0x48,0x2A,0x73
,
0x02,0x43,0x7F,0xA9,0x31,0xF8,0x04,0xEA,0x16,0xC0,0x5E,0x67,0x15,0xBA,0x50,0x94,0x4D,0xCF,0x3B,0xC2,0xD0,0x5A,0x61,0xE9,0x37,0xC8,0x09,0x6B,0xD2,0xE7
, 0x59 0x26 0x66 0x6E 0x41 0x81 0x99 0xE5 0x22 0x0E 0xC7 0xEC 0x17 0xD4 0x69 0x3F 0x1D 0xC4

};

file system c++

#include « filesystem.h »

#include < sstream>
#include <fstream>#include <vector>

#include <iostream>

Utilisation de l’espace de noms std ;

bool File_System::load_file(string file_location) {

fichier(file_location) ifstream; Charger le fichier

si(!file.good() || !file.is_open()) renvoie false; Si le fichier est introuvable ou n’a pas pu s’ouvrir

// Obtenir la taille du
fichier file.seekg(0, ios::end);
int length = file.tellg();
file.seekg(0, ios::beg);

if(length <= 0) renvoie false; Erreur lors du chargement du fichier

Charger le fichier dans data data.reserve
(length);
copie(istreambuf_iterator<char>(fichier), istreambuf_iterator<char>(), back_inserter(données));
reset();

return true;
}

bool File_System::save_file(string file_location, unsigned int max_size) {
if(data.size() > max_size) renvoie false; Juste au cas où il y aurait une erreur afin que nous n’enregistrions pas un fichier volumineux

Ouvrir le fichier
ofstream;
fichier.ouvre(file_location);

if(!file.is_open() || !file) renvoie false; Si le fichier ne s’ouvre pas

Enregistrer les données dans une chaîne de fichier
str = « »;
for(unsigned int i=0; i < data.size(); i++) str += données[i];
fichier << str;
fichier.close();

return true;
}

void File_System::reset() {
pointer = 0;
eof = faux;
ovr = faux;

}

bool File_System::read_bit() {
if(eof) return 0; Si la fin du fichier ne lit pas les octets indésirables
if(pointer+1 >= data.size()*8) eof = true; Définir la fin du fichier sur true si à la fin du fichier

Read bit
bool val = (data[(pointeur / 8)] >> (pointeur % 8)) & 0x01;
pointeur++;
retour val;

}

unsigned char File_System::read_nibble() {if(eof) return 0; Si la fin du fichier ne lit pas les octets indésirables

// Read each bit 1 by 1
unsigned char val = 0x0;

for(unsigned char i=0; i < 4; i++) {
if(read_bit()) { // If bit is set set bit in return byte
val |= (char)(1 << (3 – i));

}
}

return val;
}

unsigned char File_System::read_char() {
if(eof) return 0; // If end of file don’t read junk bytes

if(pointer % 8 == 0) { // Fast read, we can just read the byte if pointer is byte aligned
if(pointer+8 >= data.size()*8) eof = true;
unsigned char val = data[(pointer) / 8];
pointer += 8;
return val;

}

// Slow read, read each bit 1 by 1
unsigned char val = 0x00;

for(unsigned char i=0; i < 8; i++) {
if(read_bit()) { // If bit is set set bit in return byte
val |= (char)(1 << (7 – i));

}
}

return val;
}

unsigned short File_System::read_short() {
if(eof) return 0;

// Read 2 bytes and combine to short
return ((unsigned short)read_char() << 8) | (unsigned short)read_char();

}

string File_System::read_string(unsigned int bytes) {
string val = “”;
for(unsigned int i=0; i < bytes && !eof; i++) {
val += read_char();
}
return val;

}

string File_System::data_string() {
string str = “”;
for(unsigned int i=0; i < data.size(); i++) {
str += data[i];
}
return str;

}

void File_System::write_bit(bool val) {
unsigned int ind = pointer / 8;
unsigned char shift = pointer % 8;

if(ind >= data.size()) { // Add another byte to the end of the data if it’s at the data limit
data.push_back(0x00);
ovr = true; // And update this flag accordingly

}

if(inc) pointer++; // Increment pointer if inc flag is set

// Toggle bit if bit doesn’t equal value
if((bool)((data[ind] >> shift) & 0x01) != val) data[ind] ^= 0x01 << shift;

}

void File_System::write_nibble(unsigned char val) {
for(unsigned char i=0; i < 4; i++) { // We can just write 4 bits
write_bit(((val & (1 << i)) != 0));

}
}

void File_System::write_char(unsigned char val) {
if(pointer % 8 == 0) { // Fast write, we can just set the byte if pointer is byte aligned
if(pointer >= data.size()*8) { // Add the val to the end of the data if it’s at the data limit
data.push_back(val);
ovr = true; // And update this flag accordingly
} else {
data[pointer / 8] = val;
}
if(inc) pointer += 8;
return;
}

for(unsigned char i=0; i < 8; i++) { // We can just write 8 bits
write_bit(((val & (1 << i)) != 0));
}
}

void File_System::write_short(unsigned short val) {
write_char(val); // Just split the value into 2 bytes then write those
write_char(val >> 8);

}

void File_System::write_string(string val) {
for(unsigned int i=0; i < val.length(); i++) {
write_char(val[i]);

}
}

unsigned char File_System::pop() {
unsigned char val = data[data.size()-1];
data.pop_back();
return val;

}

unsigned char File_System::align() {
unsigned char dist = pointer % 8;
pointer -= dist;
return dist;

}

本文为原创文章,转载请注明出处!

bonjour a tous

Liste complète des codes Ascii Format: Document Word

 

 

symbole

code ascii 0 NULL (caractère NULL)

code ascii 1 SOH (début de l’en-tête)

code ascii 2 STX (début du texte)

code ascii 3 ETX (fin du texte)

code ascii 4 EOT (fin de transmission)

code ascii 5 ENQ (Enquête)

code ascii 6 ACK (Remerciements)

code ascii 7 BEL (Bell)

code ascii 8 BS (Retour arrière)

code ascii 9 HT (onglet horizontal)

code ascii 10 LF (saut de ligne)

code ascii 11 VT (onglet vertical)

code ascii 12 FF (Flux de formulaire)

ascii code 13 CR (retour chariot)

code ascii 14 SO (décalage)

code ascii 15 SI (Shift In)

code ascii 16 DLE (échappement de liaison de données)

code ascii 17 DC1 (Contrôle des périphériques 1)

code ascii 18 DC2 (Contrôle des périphériques 2)

code ascii 19 DC3 (Contrôle des périphériques 3)

code ascii 20 DC4 (Contrôle des périphériques 4)

code ascii 21 NAK (accusé de réception négatif)

code ascii 22 SYN (Synchronous idle)

code ascii 23 ETB (Fin du bloc de transmission)

code ascii 24 CAN (Annuleur)

code ascii 25 EM (Fin du milieu)

code ascii 26 SUB (suppléant)

code ascii 27 ESC (échappement)

code ascii 28 FS (Séparateur de fichiers)

code ascii 29 GS (séparateur de groupe)

code ascii 30 RS (séparateur d’enregistrement)

ascii code         31         US       (Unit separator)

 

ascii code         32                    (space)

ascii code         33         !           (exclamation mark)

ascii code         34                   (Quotation mark)

ascii code         35         #          (Number sign)

ascii code         36         $          (Dollar sign)

ascii code         37         %         (Percent sign)

ascii code         38         &          (Ampersand)

ascii code         39         ‘           (Apostrophe)

ascii code         40         (           (round brackets or parentheses)

ascii code         41         )           (round brackets or parentheses)

ascii code         42         *           (Asterisk)

ascii code         43         +          (Plus sign)

ascii code         44         ,           (Comma)

ascii code         45         –           (Hyphen)

ascii code         46         .           (Full stop , dot)

ascii code         47         /           (Slash)

ascii code         48         0          (number zero)

ascii code         49         1          (number one)

ascii code         50         2          (number two)

ascii code         51         3          (number three)

ascii code         52         4          (number four)

ascii code         53         5          (number five)

ascii code         54         6          (number six)

ascii code         55         7          (number seven)

ascii code         56         8          (number eight)

ascii code         57         9          (number nine)

ascii code         58         :           (Colon)

ascii code         59         ;           (Semicolon)

ascii code         60         <          (Less-than sign )

ascii code         61         =          (Equals sign)

ascii code         62         >          (Greater-than sign ; Inequality)

ascii code         63         ?          (Question mark)

ascii code         64         @         (At sign)

ascii code         65         A          (Capital A )

ascii code         66         B          (Capital B )

ascii code         67         C          (Capital C )

ascii code         68         D         (Capital D )

ascii code         69         E          (Capital E )

ascii code         70         F          (Capital F )

ascii code         71         G         (Capital G )

ascii code         72         H          (Capital H )

ascii code         73         I           (Capital I )

ascii code         74         J          (Capital J )

ascii code         75         K          (Capital K )

ascii code         76         L          (Capital L )

ascii code         77         M         (Capital M )

ascii code         78         N          (Capital N )

ascii code         79         O         (Capital O )

ascii code         80         P          (Capital P )

ascii code         81         Q         (Capital Q )

ascii code         82         R          (Capital R )

ascii code         83         S          (Capital S )

ascii code         84         T          (Capital T )

ascii code         85         U          (Capital U )

ascii code         86         V          (Capital V )

ascii code         87         W         (Capital W )

ascii code         88         X          (Capital X )

ascii code         89         Y          (Capital Y )

ascii code         90         Z          (Capital Z )

ascii code         91         [           (square brackets or box brackets)

ascii code         92         \           (Backslash)

ascii code         93         ]           (square brackets or box brackets)

ascii code         94         ^          (Caret or circumflex accent)

ascii code         95         _          (underscore, under strike, underbar or low line)

ascii code         96         `           (Grave accent)

ascii code         97         a          (Lowercase  a )

ascii code         98         b          (Lowercase  b )

ascii code         99         c          (Lowercase  c )

ascii code         100       d          (Lowercase  d )

ascii code         101       e          (Lowercase  e )

ascii code         102       f           (Lowercase  f )

ascii code         103       g          (Lowercase  g )

ascii code         104       h          (Lowercase  h )

ascii code         105       i           (Lowercase  i )

ascii code         106       j           (Lowercase  j )

ascii code         107       k          (Lowercase  k )

ascii code         108       l           (Lowercase  l )

ascii code         109       m         (Lowercase  m )

ascii code         110       n          (Lowercase  n )

ascii code         111       o          (Lowercase  o )

ascii code         112       p          (Lowercase  p )

ascii code         113       q          (Lowercase  q )

ascii code         114       r           (Lowercase  r )

ascii code         115       s          (Lowercase  s )

ascii code         116       t           (Lowercase  t )

ascii code         117       u          (Lowercase  u )

ascii code         118       v          (Lowercase  v )

ascii code         119       w          (Lowercase  w )

ascii code         120       x          (Lowercase  x )

ascii code         121       y          (Lowercase  y )

ascii code         122       z          (Lowercase  z )

ascii code         123       {           (curly brackets or braces)

ascii code         124       |           (vertical-bar, vbar, vertical line or vertical slash)

ascii code         125       }           (curly brackets or braces)

ascii code         126       ~          (Tilde ; swung dash)