מחרוזות בסגנון C חלק 2
חלק מהיחידה יסודות במסלול ה-C++ של Coddy. שיעור 68 מתוך 74.
חשוב לזכור שכאשר מצהירים על מחרוזת בסגנון C בגודל מסוים, צריך להקצות מספיק מקום לתווים שרוצים לאחסן, ועוד מקום אחד לתו null.
לדוגמה:
// נכון: "Hello" זקוקה ל-6 מקומות
// (5 אותיות + '\0')
char str1[6] = "Hello";// שגוי: המערך קטן מדי!
// "Hello" דורשת 6 מקומות, אבל הוקצו רק 5
char str2[5] = "Hello";
// שגיאה: הקוד לא יתקמפל - יש רק 5 מקומות ל-6 תווים ('H','e','l','l','o','\0')// נכון: מקום נוסף אינו בעיה
// יש יותר ממספיק מקום (נדרשים 6, ויש 10)
char str3[10] = "Hello";// דוגמה המציגה את מספר התווים:
char name[5] = "John"; // נדרשים 5 מקומות:
// J + o + h + n + '\0' = 5 תוויםאפשר לגשת לתווים בודדים במחרוזת בסגנון C באמצעות סימון של מערך:
char str[] = "Hello";
char first = str[0]; // 'H'
char third = str[2]; // 'l'אפשר גם לשנות תווים במחרוזת בסגנון C, כל עוד לא חורגים מגבולות המערך:
char str[] = "Hello";
str[0] = 'J';
std::cout << str; // מדפיס "Jello"עם זאת, אי אפשר להקצות מחרוזת חדשה ישירות למחרוזת בסגנון C לאחר שהוכרזה. יהיה עליך להשתמש בפונקציות כמו strcpy כדי להעתיק מחרוזות, ונעסוק בכך בשיעורים מאוחרים יותר.
נסו בעצמכם
השיעור הזה לא כולל אתגר קוד.
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורים חלק 1
אופרטורים אריתמטייםאופרטור מודולוהגדלה/הקטנההגדלה/הקטנה לאחר הפעולהקיצורים אריתמטייםאופרטורי השוואההשוואת מחרוזותתרגלו בעצמכם: קומפיילר C++ אונליין