מחרוזת דינמית

boo26

New member
מחרוזת דינמית

אני אמורה לקבל מהמשתמש שורת קוד כלשהי אותה כמובן אכניס לתוך מחרוזת דינמית. מישהו יכול לומר לי איך הקוד אמור להראות כי שלי לא עושה זאת
#include <iostream.h> #include <string.h> void main() { char *cmd_line; cmd_line = new char; cin >> cmd_line; cout << "cmd_line is : "<< *cmd_line << endl; }​
 

ahab

New member
תשתמשי ב-string

#include <iostream> #include <string> using namespace std; int main() { string cmd_line; cin >> cmd_line; cout << "cmd line is: " << cmd_line << endl; return 0; }​
אם את עובדת ב-++C, תשתמשי ב-string, ולא בהקצאה דינאמית של מערך charים.
 

boo26

New member
עדיין לא מבצע את הנדרש

הבעייה שהוא קורא כך עד הרווח הראשון ובשורת הקוד יש כמה רווחים. לCMD_LINE צריכה להכנס כל השורת קוד עד הקשת הENTER
 

annefan

New member
std::getline

#include <iostream> #include <string> using namespace std; int main() { string cmd_line; getline(cin, cmd_line); cout << "cmd line is: " << cmd_line << endl; return 0; }​
 

VoodooKid

New member
cin

cin תמיד מקבל עד הרווח הראשון זה החסרון שלו ואולי היתרון המקרים מסויימים... את יכולה באמת להשתמש ב getline שיעזה את העבודה
 
למעלה