else अगर (पसंद == 'पी') {textFilePointer = fopen ("/ उपयोगकर्ता / जॉनीमागुएयर / दस्तावेज़ / यूनी वर्क / ऑडियो प्रोग्रामिंग / आईएपीपीओज / बिल्डिक्स / मैकसएक्स / बिल्ड / डिबग / टेस्टपी 15.txt "," आर "); यदि (textFilePointer == नल) {printf ("त्रुटि फ़ाइल खोलने!"); } जबकि (! फीफ (टेक्स्टफाइलपोइन्टर)) {फ्लोट आवृत्ति; Fscanf (पाठफ़ाइलपोइंटर, "% d \ n", और नोट); Printf ("% d \ n \ n", ध्यान दें); आवृत्ति = 440 * पाउ (2, (नोट -69) / 12.0); AserveOscillator (0, आवृत्ति, 1, 0); aserveSleep (500); }
मेरे प्रोग्राम का यह हिस्सा एक txt फ़ाइल से 16 नंबर पढ़ता है, उन्हें समीकरण के 'नोट' भाग में उन्हें पिच में बदलने के लिए जोड़ता है, और फिर इसे सेवाओसेलेटर में भेजता है जो सेट पिच पर 16 नोट्स बजाता है। नींद की चपेट में बताता है कि प्रत्येक नोट (500 एमएमएस) के लिए कितना समय लगता है, लेकिन 16 वें रिंग को बंद नहीं हो पा रहा है और मुझे इसकी आवश्यकता 500 एमएमएस के बाद बंद करने के लिए है!
परीक्षण feof
(उपरोक्त टिप्पणियां देखें) के बजाय आपको यह जांचना चाहिए कि फ़ाइल फ़ील्ड को सही तरीके से पढ़ा गया था और आप दूसरे कॉल के साथ थरथरानवाला बंद कर देते हैं।
int नोट; फ्लोट आवृत्ति; जबकि (1 == fscanf (टेक्स्टफाइलपॉन्टर, "% d \ n", और नोट)) {printf ("% d \ n \ n", नोट); आवृत्ति = 440 * पाउ (2, (नोट -69) / 12.0); AserveOscillator (0, आवृत्ति, 1, 0); aserveSleep (500); } AserveOscillator (0, 0, 0, 0); // ओएससी बंद करें
No comments:
Post a Comment