Includendo alcuni calcoli nel mio codice, ho inciampato sulla costante "PI". Almeno nella mia versione Xcode 4.6 potrei usare uno dei due. Ma qual è la differenza tra pi
e M_PI
? La documentazione è un po 'stretta su questo argomento.Qual è la differenza tra "pi" e "M_PI" nell'oggetto
risposta
pi
è definito nelle intestazioni "CarbonCore.framework", come
extern const double_t pi __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_0, __MAC_10_8, __IPHONE_NA, __IPHONE_NA);
ma contrassegnati come "deprecato". Presumo che si tratti di un relitto di vecchie strutture in carbonio.
M_PI
è definito come macro
#define M_PI 3.14159265358979323846264338327950288
in math.h
e parte dello standard POSIX.
I valori sono identici, ma è necessario utilizzare M_PI
per motivi di trasferibilità.
(E per Swift, vedere How to get mathemical PI constant in Swift.)
Grazie per la risposta e WOW! È bello sapere di non usare 'pi' (ho sempre fatto così lontano). Posso includere direttamente 'M_PI' nel mio codice o devo' #importare ... 'anche una classe speciale. – JFS
Se si importano già le intestazioni Foundation o CoreFoundation, è sufficiente utilizzarlo, poiché queste includono '
Grazie e buona fortuna! – JFS
M_PI è abbastanza vicino per approssimare la circonferenza della galassia (e probabilmente l'intero Universo) a poche miglia, in modo da non perdere il sonno esso.
- 1. Qual è la differenza tra = e: =
- 2. Qual è la differenza tra Verilog! e ~?
- 3. Qual è la differenza tra? : e ||
- 4. qual è la differenza tra [[], []] e [[]] * 2
- 5. Qual è la differenza tra $ e $$?
- 6. Qual è la differenza tra ("") e (null)
- 7. Qual è la differenza tra dict() e {}?
- 8. Qual è la differenza tra " " e ""?
- 9. Qual è la differenza tra {0} e ""?
- 10. Qual è la differenza tra `##` e `hashCode`?
- 11. Qual è la differenza tra {0} e +?
- 12. Qual è la differenza tra .ToString() e + ""
- 13. qual è la differenza tra:.! e: r !?
- 14. Qual è la differenza tra arm64 e armhf?
- 15. Qual è la differenza tra "è Nessuno" e "== Nessuno"
- 16. Unix: Qual è la differenza tra la fonte e l'esportazione?
- 17. Qual è la differenza tra il callback e la promessa
- 18. Qual è la differenza tra la sezione .got e .got.plt?
- 19. Qual è la differenza tra la lista() e []
- 20. Qual è la differenza tra GHC e la piattaforma Haskell?
- 21. Qual è la differenza tra sé e la finestra?
- 22. Qual è la differenza tra la cartella vim72 e vimfiles?
- 23. Qual è la differenza tra la serratura e RLock
- 24. Qual è la differenza tra la funzione() {}() e function() {}()
- 25. Qual è la differenza tra la crittografia SHA e AES?
- 26. Qual è la differenza tra la [OptionalField] e [NonSerialized]
- 27. Qual è la differenza tra Chisel e Lava e CLaSH?
- 28. Qual è la differenza tra queste funzioni
- 29. Qual è la differenza tra queste funzioni?
- 30. Qual è la differenza tra Response.Write() eResponse.Output.Write()?
'pi' non è una costante standard nelle intestazioni Cocoa che ho incluso, né è' PI'. 'M_PI' è la definizione standard di math.h e dovrebbe essere adatta per la maggior parte degli scopi. –
@BenZotto: 'M_PI' è un posix-ism, non parte dello standard C. –
@StephenCanon: giusto. Intendevo "standard" come in "quello che tutti usano". :) –