je le programme suivant,question de lecture du fichier en C++
int iIndex=0;
char cPort[5]={"\0"};
char cFileChar;
fopen_s(&fFile,"c:\\Config\\FileName.txt","r");
if(fFile !=0)
{
cFileChar = getc(fFile);
while (cFileChar!= EOF)
{
cPort[iIndex]=cFileChar;
iIndex++;
cFileChar = getc(fFile);
}
iDIPort=atoi(cPort);
}
dans le fichier que j'ai 32000, mais lorsque le programme exécute et lire à partir du fichier quelque temps sa lecture fine et mis iDIPort à 32000, mais parfois il définir la valeur de la variable à 320000.
Veuillez m'aider à régler ce problème.
Est-ce le code actuel? Si c'est le cas, il n'est pas clair comment cela pourrait fonctionner, car cFileChar ne change jamais. En outre, il ressemble à C, pas C++? –
Votre code semble un peu étrange. 'cFileChar' n'est jamais modifié à l'intérieur de la boucle, donc le contenu de la boucle sera soit zéro ou infini, selon la valeur initiale de' cFileChar'. De plus, l'initialisation 'char cPort [5] = {" \ 0 "};' ne me semble pas juste. – Philipp
Maintenant, vérifiez le code. – Siddiqui