सी

2010-05-15 3 views
7

में पाप वी/एस sinf फ़ंक्शन मैं अपने सी प्रोग्राम में sinf फ़ंक्शन का उपयोग करने की कोशिश कर रहा हूं लेकिन यह मुझे एमएसवीसी 6.0 के तहत एक अपरिभाषित संदर्भ त्रुटि देता है, हालांकि sin ठीक काम करता है।सी

यह मुझे sin और sinf के बीच अंतर खोजने के लिए उत्सुक बनाता है।

sin और sinf के बीच तार्किक अंतर क्या है?

मैं अपनी खुद की sinf कार्यक्षमता कैसे कार्यान्वित कर सकता हूं?

+0

साइन की गणना करने के लिए एक फ्लोट फ़ंक्शन का उपयोग करना एक sinf है। –

उत्तर

7

sin एक डबल लेता है और एक डबल - sinf एक फ्लोट लेता है और एक फ्लोट देता है।

दूसरे शब्दों में sin डबल परिशुद्धता है और sinf एकल परिशुद्धता है।

आप एक पुराने संकलक उपयोग कर रहे हैं कि के रूप में sinf आप इसे लागू कर सकते हैं नहीं है:

#define sinf(x) (float)sin((double)(x))

3

पाप एक डबल लेता है और एक डबल वापस आती है और एएनएसआई सी sinf प्रतिसाद नहीं द्वारा परिभाषित किया गया है 'टी।

+4

'sinf()' सी 8 9 में मानक नहीं है। यह सी 99 में _is_ मानक है। –

2

sinf() सी 99 में सी में जोड़ा गया था, जो माइक्रोसॉफ्ट विजुअल सी ++ पूरी तरह से समर्थन नहीं करता है (यहां तक ​​कि, दृश्य सी ++ 6 को सी 99 मानकीकृत करने से पहले जारी किया गया था)।

आप sin() समारोह, (sinf() एक float लेता है) जो एक double लेता उपयोग कर सकते हैं।