ठीक है, इसलिए मैं समझता हूं कि स्ट्रोकोक अपने इनपुट तर्क को संशोधित करता है, लेकिन इस मामले में, यह इनपुट स्ट्रिंग को केवल पहले टोकन में ढह रहा है। यह क्यों हो रहा है, और मैं इसे ठीक करने के लिए क्या कर सकता हूं? (कृपया ध्यान दें, मैं चर "अस्थायी" के बारे में बात नहीं कर रहा हूँ, जो पहले टोकन होना चाहिए, बल्कि चर "इनपुट" है, जो एक कॉल के बाद strtok हो जाता है "इस")स्ट्रोकोक इस तरह अपना इनपुट क्यों बदल रहा है?
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
int main(int argc, char* argv[]) {
char input[]="this is a test of the tokenizor seven";
char * temp;
temp=strtok(input," ");
printf("input: %s\n", input); //input is now just "this"
}
ओह मैं देखता हूँ। स्ट्रैटोक काम कैसे करता है, इसकी मेरी समझ दूर थी - मैंने माना कि यह टोकन को बंद कर दिया गया था और फिर डिलिमीटर के बाद इनपुट पॉइंटर को पहले वर्ण में फिसल गया था। किसी भी दर पर, धन्यवाद! यह एक बहुत स्पष्ट और सहायक उत्तर था। – user1209326
वह प्रबुद्ध था, धन्यवाद। –