Go Down

Topic: [Info] Code data download (Read 296 times) previous topic - next topic

Noob99

Salut,

J'ai quelques petites questions concernant le code http://playground.arduino.cc//Code/FTP:

En particulier sur certaines parties suivantes:

Cette partie sert à vérifié que la connection passive est ok non ?
Je ne comprends pas trop d'ou sortent les choses suivantes: strtok(outBuf,"(,"), atoi(tStr) ??? Si ce sont des fonctions elles ne sont déclarés nulle part...

Code: [Select]
char *tStr = strtok(outBuf,"(,");
int array_pasv[6];
for ( int i = 0; i < 6; i++) {
tStr = strtok(NULL,"(,");
array_pasv[i] = atoi(tStr);
if(tStr == NULL)
{
Serial.println("Bad PASV Answer");

}
}


Ainsi que cette partie:
A quoi sert cette fonction ?
Je ne comprends pas la signification du signe "|", l'équivalent d'un ou ???

Code: [Select]
unsigned int hiPort,loPort;

hiPort = array_pasv[4] << 8;
loPort = array_pasv[5] & 255;

Serial.print("Data port: ");
hiPort = hiPort | loPort;
Serial.println(hiPort);


Et je ne comprends pas trop comment marche cette partie:
Et à quoi sert cette fonction...
if(respCode = '4'), pourquoi 4 ???

Code: [Select]
byte eRcv()
{
byte respCode;
byte thisByte;

while(!client.available()) delay(5);

//Lit un octet du fichier sans passer au suivant
respCode = client.peek();

outCount = 0;

while(client.available())
{
thisByte = client.read();
Serial.write(thisByte);

if(outCount < 127)
{
outBuf[outCount] = thisByte;
outCount++;
outBuf[outCount] = 0;
}
}

if(respCode = '4')
{
efail();
return 0;
}

return 1;
}


Cordialement

Merci :)

skywodd

Bonjour,


Cette partie sert à vérifié que la connexion passive est ok non ?

Oui ça permet de vérifier que le PASV n'as pas planté.


Je ne comprends pas trop d'ou sortent les choses suivantes: strtok(outBuf,"(,"), atoi(tStr) ???
Si ce sont des fonctions elles ne sont déclarés nulle part...

Ce sont des fonctions standard de la libc :
http://www.cplusplus.com/reference/cstring/


Je ne comprends pas la signification du signe "|", l'équivalent d'un ou ???

OU "bit  à bit"
http://www.bien-programmer.fr/bits.htm


if(respCode = '4'), pourquoi 4 ???

Les codes d'erreur commencent à 400.
Donc si le premier chiffre est supérieur à 4 c'est un code d'erreur.
Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

Go Up