Le précédent était avec la STL. Voici maintenant une version API Win32:
#include <windows.h>
#include <iostream>
using namespace std;
int main ()
{
HANDLE hfile;
char *buffer, *c;
int size, linenum = 1;
DWORD byte;
hfile = CreateFile("nomdufichier", GENERIC_READ, 0, 0, OPEN_EXISTING, 0, 0);
size = GetFileSize(hfile, 0);
buffer = new char[size+1];
ReadFile(hfile, buffer, size, &byte, 0);
buffer[byte] = 0;
c = buffer;
while(*c) if(*c++ == '\n') ++linenum;
cout << "Nombre de ligne: " << linenum << endl;
delete[] buffer;
CloseHandle(hfile);
return 0;
}
Je tien à préciser qu'aucun de mes deux codes n'effectuent de tests de sécurités (test pour savoir si le fichier est bien ouvert par exemple). À toi de les rajouter si ça t'intéresse bien sûr.
C++ (@++)