2013-01-08 14 views
5

मैं क्या समझ है कि memcpy 3 तर्क होना चाहिए:भी कुछ तर्क कार्य करने के लिए 'memcpy'

void * memcpy (void * destination, const void * source, size_t num); 

तो मैं इस कोड को कोशिश कर रहा हूँ:

//char *tmpPtr is a pointer that points to some data 
char frameBuffer[921600]; //destination starting a given index 
int bufferIndex;//the given index 
memccpy(frameBuffer+bufferIndex,tmpPtr,Data.size()-1); 

लेकिन मैं इस त्रुटि हो रही है:

error: too few arguments to function `void * memccpy (void *, const void *, int, size_t)

+1

पृथ्वी पर यह कैसे स्थानीयकृत है !!! यह सी प्रोग्रामर द्वारा उपयोग की जाने वाली मानक पुस्तकालयों के कार्यों के बारे में है। इसमें एक वास्तविक त्रुटि संदेश शामिल है और इसका सही उत्तर दिया जा सकता है। भविष्य में लोगों की मदद करने की संभावना बहुत अधिक है, जिनके पास इस प्रकार की त्रुटि है (बहुत कम तर्क अक्सर गलत वर्तनी हो सकती है क्योंकि यह मुख्य कारण है) यह पूरी तरह से इसका वर्णन करता है। –

+3

@ लोकी एस्टारी इसे स्थानीयकृत किया गया है क्योंकि यह फ़ंक्शन के नाम को टाइप करने में मेरी गलती है, इसके लिए खेद है। –

उत्तर

25

टाइपो:

memccpy 
    ^^ 

आपने गलत फ़ंक्शन कहा है।

memccpy भी एक चरित्र (int तर्क के रूप में) लेता है जिस पर प्रतिलिपि रोक दी जाएगी।

+0

मेरा बुरा !! धन्यवाद, मैं इस परियोजना पर 18 घंटे काम कर रहा हूं, क्या मुझे सवाल हटाना है ?? –

+1

अब आप इसे हटा नहीं सकते हैं, इसका एक उग्र जवाब है। मुझे लगता है कि इसे बहुत स्थानीयकृत के रूप में बंद किया जा सकता है और उसके बाद सामान्य तरीके से हटा दिया जा सकता है। –

+0

ठीक है, मैं 8 मिनट –

संबंधित मुद्दे