MrPenguin9
Originalni plakat- 1. avgusta 2008
- 13. maja 2009
Hvala
SilentPanda
Zaslužni moderator
- 8. oktober 2002
- Bambusov gozd
- 13. maja 2009
MrPenguin9
Originalni plakat- 1. avgusta 2008
- 13. maja 2009
Hvala
PhoneyDeveloper
- 2. september 2008
- 13. maja 2009
Je kaj več?
Poskusite to vtipkati v terminal ali poguglati
človek greh M
MrPenguin9
Originalni plakat- 1. avgusta 2008
- 13. maja 2009
Hvala R
Ron C
- 18. julij 2008
- Območje Chicaga
- 13. maja 2009
MrPenguin9 je rekel: Toda ko naredim 'tan(1)' v xcode, mi vrne 1556013989!?!? Toda tan 1 je 0,017455... Kaj delam narobe?
Hvala
1556013989? Morda samo tiska vrednost, oblikovano s plavajočo vejico, kot celo število brez pretvorbe tipa?
Od kod dobivate to funkcijo tan()? math.h? Kakšno vrsto na primer vrne tan(? Ali traja radiane ali stopinje? V katero vrsto shranjujete vrnjeno vrednost?
Preveril sem stran man za tan() in piše:
Koda: |_+_| Torej.... edina funkcija, ki se ujema s tem podpisom, sprejme dvojno (samodejna pretvorba) in vrne dvojno (tudi samodejna pretvorba) in vzame radiane.
Kako gledate na vrednost? Kako izgleda vaša koda?
EDIT: Pravkar sem preveril vrednost tan (1 radian) v Calculator.app - piše: 1,557408. Torej... zakaj mislite, da bi morala biti 0,017455? To je vrednost tan (1 STOPNJA) M
MrPenguin9
Originalni plakat- 1. avgusta 2008
- 13. maja 2009
Guiyon
- 19. april 2008
- Cambridge, MA
- 13. maja 2009
MrPenguin9 je rekel: -(void)awakeFromNib {
Text.text = [NSString stringWithFormat'%d', tan(1)];
}
Tu je vaša težava, tan vrne dvojno, vendar niz formata %d pričakuje celo število. Če spremenite '%d' v '%lf', bi to moralo popraviti. Če na terminalu vnesete 'man 3 printf', boste dobili veliko več informacij o nizih formata v slogu printf, ki jih uporablja Apple (in številne druge knjižnice); poiščite del, ki se začne z 'Niz formata je sestavljen iz nič ali več direktiv' R
Ron C
- 18. julij 2008
- Območje Chicaga
- 14. maja 2009
Guiyon je rekel: Tu je vaša težava, tan vrne dvojno, a niz formata %d pričakuje celo število. Če spremenite '%d' v '%lf', bi to moralo popraviti. Če na terminalu vnesete 'man 3 printf', boste dobili veliko več informacij o nizih formata v slogu printf, ki jih uporablja Apple (in številne druge knjižnice); poiščite del, ki se začne z 'Niz formata je sestavljen iz nič ali več direktiv'
Te 'čarobne' pretvorbe tipa se ne zgodijo, razen če prevajalnik ve, da mora obstajati. En primer, ko ne bo vedel, je v kodi, kot je stringWithFormat: - v resnici ne ve, da bi morala biti pretvorba, zato veselo poda dvojno. Ko se začnete igrati z vrstami s plavajočo vejico, morate biti pozorni na to.
Še ena kratka opomba o vrstah s plavajočo vejico. Ne pišite kode, kot je: Koda: |_+_| Težava s tipi = in s plavajočo vejico je, da je malo verjetno, da bodo enaki. Tudi nekaj takega: Koda: |_+_| Na vaši tabli so te številke enake. Ni nujno, da so znotraj računalnika. Čudno je, a se moraš navaditi. M
MrPenguin9
Originalni plakat- 1. avgusta 2008
- 15. maja 2009
Hvala vsem, ki ste mi pomagali!
Priljubljene Objave