rubljaha
Originalni poster- 22. prosinca 2008
- 8. siječnja 2009
Koristim ovaj isječak koda
praznina * ručka_;
if (handle_ =dlopen('/System/Library/Frameworks/DiskArbitration.Framework/Versions/A/DiskArbitration',RTLD_NOW))
{
printf('............');
}
inače ako (handle_ =dlopen('/System/Library/PrivateFrameworks/DiskArbitration.Framework/Versions/A/DiskArbitration',RTLD_NOW))
{
printf('.................');
}
Ali dobivam upozorenje:
'predloži zagrade oko dodjele koja se koristi kao vrijednost istine' za prvi redak, tj. za petlju 'for'.... može li mi netko pomoći da se riješim ovog upozorenja.. DO
kpua
- 25. srpnja 2006
- 8. siječnja 2009
Međutim, ponekad je to najjednostavniji način da kodirate ono što mislite (iako mislim da to nije nužno u vašem primjeru). Kada imate zadatak u naredbi if, GCC općenito očekuje nešto poput ovoga:
Šifra: |_+_|
Obratite pažnju na dodatne zagrade oko zadatka. GCC predlaže da koristite zagrade kako biste izbjegli sljedeću pogrešku:
Šifra: |_+_|
koji ne bi provjeravao da li je vrijednost dodijeljena foo jednaka NULL, već radije dodijelio boolean (bar() != NULL) foo.
Također je uobičajeno i općenito jasnije imati eksplicitnu booleovu provjeru, pa zato GCC to očekuje. S
Sander
do
- 24. travnja 2008
- 9. siječnja 2009
Šifra: |_+_|
je ispravno C (dodijeli b a i provjeri da nije nula), ali najčešće su ljudi stvarno mislili
Šifra: |_+_|
Budući da je dodjela unutar if() iznimka, GCC izdaje upozorenje o tome. Također za buduće čitatelje vašeg koda, dodatne zagrade označavaju 'da, ovdje stvarno mislim na zadatak'.
Popularni Postovi