Including source code within the wiki/fr: Difference between revisions
Jump to navigation
Jump to search
(Created page with "== Exemple == Voici un exemple de code C++ créé avec la balise <nowiki><syntaxhighlight lang="cpp" line> ... </syntaxhighlight></nowiki>.") |
(Updating to match new version of source page) |
||
Line 32: | Line 32: | ||
int buff_size = 50*1024*1024; | int buff_size = 50*1024*1024; | ||
ofstream out ("file.dat"); | |||
ostringstream oss (ostringstream::app); | ostringstream oss (ostringstream::app); | ||
oss.precision(5); | oss.precision(5); |
Latest revision as of 21:57, 19 May 2016
Pour inclure du code source dans le wiki, nous utilisons l'extension SyntaxHighlight_GeSHi. Vous pouvez facilement inclure un extrait de code source grâce à la balise <syntaxhighlight> </syntaxhighlight>.
Options de la balise <syntaxhighlight>
Pour la liste des options, veuillez vous référer à cette page.
Option lang
L'option lang permet de définir le langage utilisé pour la détection de la syntaxe. Le langage par défaut, si ce paramètre est omis, est le C++. La liste des langages supportés est disponible ici.
Option line
L'option line permet d'afficher des numéros de ligne.
Exemple
Voici un exemple de code C++ créé avec la balise <syntaxhighlight lang="cpp" line> ... </syntaxhighlight>.
#include <iostream>
#include <fstream>
#include <unistd.h>
#include <sstream>
using namespace std;
void flushIfBig(ofstream & out, ostringstream & oss, int size, bool force=false) {
if (oss.tellp() >= size) {
out << oss.str();
oss.str(""); //reset buffer
}
}
int main() {
int buff_size = 50*1024*1024;
ofstream out ("file.dat");
ostringstream oss (ostringstream::app);
oss.precision(5);
for (int i=0; i<100*buff_size; i++)
{
oss << i << endl;
flushIfBig(out,oss,buff_size);
}
flushIfBig(out,oss,buff_size,true);
out.close();
}