עבר עריכה לאחרונה בתאריך 01.12.02 בשעה 17:22
אתה יודע למה הוא מתכוון.
בוא אני אסביר לך אלעד אחי:<<<דבר אחד לפני שאתה מתחיל לקרוא: כל פעם שאתה רואה סוגריים מסולסלות כאלה {} תתייחס אליהן כסוגריים מרובעות, כי פשוט יש בעייה בפורום כשכותבים עם סוגריים מרובעות מכיוון שהם משתמשות לקודים של הפורום.>>>
כמו ש-duneland אמר, מחרוזת (string) היא בעצם מערך של תווים.
אני מניח שכבר למדתם מערך:
אז מחרוזת זה כמו מערך, רק שהוא מורכב מתווים (char) ולא משלמים (int).
הנה דוגמא להצהרה על מחרוזת בשם a בעלת 10 תווים:
עכשיו, בשביל לקלוט ביטוי (מילה או משפט או כל דבר) למחרוזת אתה יכול לכתוב ככה:
(בהנחה שקראת למחרוזת שלך a)
אבל יותר נוח להשתמש בפקודה gets בצורה הבאה:
פקודות אלה נותנות למשתמש להכניס כמה תווים שירצה עד שילחץ enter.
החיסרון שלהן הוא שאסור להכניס רווחים (תנסה תראה מה קורה
).
עכשיו אחרי שקלטת את המחרוזת, אתה רוצה גם להדפיס אותה נכון? אז אתה כותב ככה:
(נגיד שאתה רוצה להדפיס 20 תווים- מקומות- במחרוזת)
for(i=0;i<20;i++) printf("%c", a{i});
|
מובן? פשוט מה שעשיתי כאן זה לולאה, שמדפיסה את המחרוזת תו-תו.
עכשיו תלמד כמה פקודות שמיוחדות למחרוזות.
בשביל הפקודות האלה תצטרך להשתמש בספרייה: string.h.
אוקיי אז נגיד שקראנו למחרוזת שלנו str אוקיי?
הפקודה
strlen
תחזיר לנו את אורך המחרוזת. שים לב שאם למשל הגדרת מחרוזת באורך של 20 תווים,
אבל כשהתבקשת לקלוט לתוכה נתונים הכנסת רק 10 תווים לדוגמא,
אז הערך שתקבל מפקודה זו יהיה 10 מובן?
אפשר להשתמש בפקודה בכמה דרכים:
שזה יכניס למשתנה "איי" את אורך המחרוזת שכתבת בסוגריים.
2) הפקודה הזאת שימושית מאוד גם בלולאות, להדפסת מחרוזת לדוגמא:
for(i=0;i<strlen(str);i++) printf("%c", str{i});
|
3) strlen("HelloWorld!"); |
שים לב לגרשיים.
אם אתה שם גרשיים זה אומר שאתה רוצה למצוא את האורך של הביטוי שהכנסת בסוגריים, ולא של מחרוזת בשם הזה.
אוקיי מובן עד לפה?
יופי.
אתה יודע מה במקום להמשיך להסביר לך על שאר הפקודות, אני פשוט אסרוק לך שני דפים שכתבתי מכיתה י' לפני שנתיים
אני אשים את זה פה תוך 5 דקות 
וזהו זה הכל בעיקרון!!!
אני מקווה שעזרתי לך ושעכשיו הכל מובן!!!
