Ĺadny brzuch
Dlaczego ten kod daje inny rezultat,
drive = CHAR(i) + ":\\";
od tego?
drive = CHAR(i); drive += ":\\";
W pierwszym pojawiają się śmieci i karzaki. Drugi jest ok.
Napisz jakiego typu jest drive.
Podejrzewam, że jest to jakaś klasa, w stylu string lub AnsiString, która ma przeciążone operatory = oraz +=.
W pierwszym przypadku jednak najpierw wykonuje się operator + dla argumentów typu char i char* (prawdopodobnie, nie jestem pewien co to za typ CHAR), a dopiero poźniej operator = z tamtej klasy.
//Zmienne int i, Drive_Type; AnsiString drive; for(i = 'A'; i<= 'Z'; i++){ //Wariant 1: drive = CHAR(i) + ":\\"; //Wariant 2: drive = CHAR(i); drive += ":\\"; //I tu kodzik :-) Drive_Type = GetDriveType(drive.c_str()); if(Drive_Type >1){ ListBox1->Items->Add(drive); } }
Tak sobie to wygląda w całości ;-)
CHAR() zamienia liczbę na znak ascii o wartości liczby.
Tak jak sądziłem, czyli AnsiString, więc nie będe powtarzał, bo już wytłumaczyłem skąd wynika różnica.
A co do CHAR to chodziło mi o to czym się różni od char. ;)
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
drive = CHAR(i) + ":\\";
od tego?
drive = CHAR(i); drive += ":\\";
W pierwszym pojawiają się śmieci i karzaki. Drugi jest ok.
Napisz jakiego typu jest drive.
Podejrzewam, że jest to jakaś klasa, w stylu string lub AnsiString, która ma przeciążone operatory = oraz +=.
W pierwszym przypadku jednak najpierw wykonuje się operator + dla argumentów typu char i char* (prawdopodobnie, nie jestem pewien co to za typ CHAR), a dopiero poźniej operator = z tamtej klasy.
//Zmienne int i, Drive_Type; AnsiString drive; for(i = 'A'; i<= 'Z'; i++){ //Wariant 1: drive = CHAR(i) + ":\\"; //Wariant 2: drive = CHAR(i); drive += ":\\"; //I tu kodzik :-) Drive_Type = GetDriveType(drive.c_str()); if(Drive_Type >1){ ListBox1->Items->Add(drive); } }
Tak sobie to wygląda w całości ;-)
CHAR() zamienia liczbę na znak ascii o wartości liczby.
Tak jak sądziłem, czyli AnsiString, więc nie będe powtarzał, bo już wytłumaczyłem skąd wynika różnica.
A co do CHAR to chodziło mi o to czym się różni od char. ;)