c programming tutorial - בקלות C++
מדריכי תכנות

שיעור 1: הבסיס של ++C

אני כותב את זה בשביל אנשים שרוצים ללמוד איך לתכנת ב ++C, במיוחד אלו שהיו להם בעיות. זה לאלו מכם שרוצים להרגיש תחושה של הישג בכל פעם שהתוכנית שלכם עובדת בצורה מושלמת. אם אתה רוצה את התחושה של הישג המשך לקרוא.

++C היא שפת תכנות. היא שפת תכנות של הרבה ניבים שונים, בדיוק כמו שלכל שפה מדוברת יש ניבים רבים. אולם, ב C הם אינם כיוון שה"דוברים" גרים בצפון, דרום, או גדלו באיזשהו מקום אחר, זה בגלל שיש כל כך הרבה מהדרים. ישנם בערך ארבעה מהדרים עיקריים:
,Watcom C/386 ,Microsoft Visual C++ ,Borland C++ ו DJGPP. ניתן להוריד את DJGPP מ http://www.delorie.com/djgpp/ או ייתכן שכבר יש לך מהדר אחר.

כל אחד מהמהדרים האלו קצת שונה. פונקציות הספרייה של אחד יכילו את כל הפונקציות הסטנדרטיות של ++C, אבל יהיו לו גם פונקציות אחרות או, אם נמשיך את ההקבלה, מילים. לעיתים, זה יכול להוביל לבלבול, כיוון שתוכניות מסוימות ירוצו רק תחת מהדרים מסוימים, אולם אני לא מאמין שזה יקרה בתוכניות בשיעורים אלה.

אם אין לך מהדר, אני מאוד מציע שתשיג אחד. מהדר פשוט הוא מספיק טוב לשיעורים שלי, אבל העיקר שתשיג אחד.

++C היא זן שונה של שפת תכנות. יש לה רק מספר קטן של מילות מפתח ל DOS ואין לה בכלל מילות מפתח לשימוש עם פלט. פירושו של דבר שכמעט כל דבר מאוחסן בקובץ כותרת. דבר זה גורם לשימוש בפונקציות רבות. אבל בואו נראה תוכנית אמיתית...

#include <iostream.h>


int main()
{
  cout<<"HEY, you, I'm alive!  Oh, and Hello World!";
  return 0;    
}

זה לא נראה כל כך קשה, נכון? בואו נפרק את התוכנית ואז נתבונן בה. ה include# הוא הנחייה ל preprocessor שאומרת למהדר לשים את הקוד שבקובץ הכותרת iostream.h בתוך התוכנית שלנו! באמצעות הכללת קבצי כותרת, ניתן להשיג גישה להרבה פונקציות שונות. לדוגמא, הפונקציה cout מצריכה את הכללת הקובץ iostream.h.

הדבר הבא הוא ()int main מה שזה אומר זה שיש פונקציה שנקראת main, ושהיא מחזירה מספר שלם, כלומר int. לאחר מכן הסוגריים המסולסלים ( } ו { ) משמשים לסמן את ההתחלה והסוף של פונקציות, ושל גושי קוד אחרים. אם תכנתת בפסקל, תכיר אותם כ BEGIN ו END.

השורה הבאה של התוכנית עשויה להיראות מוזרה. אם תכנתת בשפות אחרות ייתכן שתחשוב שיעשה שימוש ב print כדי להציג טקסט. אולם, ב ++C משתמשים בפונקציה cout כדי להציג טקסט. היא משתמשת בסימנים >; >; שידועים כאופרטורים של הכנסה. המירכאות אומרות למהדר שאתה רוצה להציג את מחרוזת האותיות כפי שהיא. ה ; נוסף בסוף כל קריאה לפונקציה ב ++C.

השורה שלפני האחרונה בקוד main מורה ל main להחזיר 0. כאשר מוחזר ערך ל main, הוא מועבר הלאה למערכת ההפעלה. יש לציין שההצהרות ()int main או ()void main יעבדו שתיהן באופן כללי. זה מנהג מקובל אצל חלק להצהיר על main כ void, אבל עבור אחרים זה שיבוש גדול. בעבר, שיעורים אלו השתמשו ב void main, אבל זה כבר לא מומלץ, כיוון שזה לא מתאים לסטנדרט של מכון התקנים האמריקאי (ANCI).

לאחר מכן, הסוגריים המסולסלים סוגרים את הפונקציה. אתה יכול לנסות את התוכנית אם אתה רוצה, פשוט גזור והדבק אותה ל IDE של מהדר כגון DJGPP, או שמור אותו בקובץ עם סיומת cpp, והשתמש במהדר של שורת פקודה כדי להדר ולקשר אותו.

חשוב מאוד להבין הערות. כאשר מצהירים ששטח הוא הערה, המהדר יתעלם ממנו. ניתן להשתמש בהערה או עם //, שמצהירים על כל השורה שאחריהם כהערה, או שניתן להשתמש ב */ ואחר כך /* כדי לסמן את כל מה שביניהם כהערה. מהדרים מסוימים ישנו את הצבע של שטח ההערה, אבל אחרים לא. הזהר לא להצהיר בטעות על חלק מהקוד שלך כהערה. שים לב שזה מוכר כ"הוצאה להערה" קטע של קוד, וזה שימושי כאשר מנפים באגים.

עד כה אתה אמור להיות מסוגל לכתוב תוכנית פשוטה שמציגה מידע שהדפסת אתה, המתכנת. אולם, ניתן גם לקבל קלט. הפונקציה בה משתמשים ידועה כ cin>>.

חכה! לפני שאתה יכול לקבל קלט אתה צריך מקום לאחסן קלט! בתכנות, מיקומים אלו בהם מאוחסנים קלט וצורות אחרות של נתונים, נקראים משתנים. יש מספר טיפוסים שונים של משתנים, עליהם יש להצהיר. הטיפוסים הבסיסיים הם int ,char ו float.

char משמש ליצירת משתנים שמאחסנים תווים, int משמש ליצירת משתנים שמאחסנים מספרים שלמים (כמו 1,2,0,-3,44,-44), ו float משמש להצהרה על מספרים עם מקומות עשרוניים. למעשה, הם כולם מילות מפתח בהן משתמשים לפני שמות משתנים כדי לומר למהדר שיצרת משתנה. דבר זה ידוע כ"הצהרה על משתנה". כאשר מצהירים על משתנה, או משתנים, יש לסיים את השורה בנקודה פסיק, כמו שהיית עושה אם היית קורא לפונקציה. אם אתה לא מצהיר על המשתנה שאתה רוצה להשתמש בו, תקבל מספר רב של הודעות שגיאה והתוכנית לא תרוץ.

להלן מספר דוגמאות של הצהרה על משתנים:

int x;
int a, b, c, d;
char letter;
float the_float;

לא ניתן, בכל אופן, להצהיר על שני משתנים מטיפוסים שונים באותו שם.

#include <iostream.h>

int main()
{
  int thisisanumber;
  cout<<"Please enter a number:";
  cin>>thisisanumber;
  cout<<"You entered: "<<thisisanumber;
  return 0;
}

בואו נפרק את התוכנית הזו ונבחן אותה שורה אחר שורה. int היא מילת המפתח בה משתמשים כאשר מצהירים על משתנה שהוא מספר שלם. ה cin>> קובע את הערך של thisisanumber למה שהמשתמש מכניס לתוכנית כאשר הוא מתבקש לעשות זאת. זכור שהמשתנה הוצהר כמספר שלם, ומשמעות הדבר שהקלט יהיה מהצורה של מספר שלם. נסה להכניס סדרה של תווים, או מספר עשרוני כאשר אתה מריץ את התוכנית לדוגמא כדי לראות מה אתה מקבל בתגובה. שים לב שכאשר מדפיסים משתנה אין בכלל מירכאות. אם היו מירכאות, הפלט היה "You Entered: thisisanumber". אל תתבלבל מההכללה של שני אופרטורים שונים של הכנסה בשורה. זה מותר, כל עוד אתה מוודא שיש לכל פלט של משתנה או מחרוזת אופרטור הכנסה משלו. אל תנסה לשים שני משתנים יחד עם <;<; אחד בלבד כיוון שזה ייתן לך הודעת שגיאה. אל תשכח לסיים פונקציות והצהרות בנקודה פסיק. אחרת תקבל הודעת שגיאה כאשר תנסה להדר את התוכנית.

עכשיו שאתה יודע קצת על משתנים, הנה מספר דרכים לתפעל אותם. *, -, +, /, =, ==, <, >; הם כולם אופרטורים בהם משתמשים על מספרים, אלה הם הפשוטים. ה * כופל, ה - מחסר, וה + מחבר. כמובן שהדבר החשוב ביותר לשינוי משתנים הוא סימן השוויון. בשפות אחדות, = בודק אם צד אחד שווה לצד השני, אבל ב ++C == משמש למטרה זו. אולם, סימן השוויון הוא עדיין שימושי ביותר. הוא קובע את הצד השמאלי של סימן השוויון, שצריך להיות משתנה אחד ויחיד, כשווה לצד הימני. הצד הימני של סימן השוויון הוא המקום בו ניתן להשתמש באופרטורים האחרים.

להלן מספר דוגמאות:

a=4*6;  // a is 24 (שים לב לשימוש בהערות ובנקודה פסיק) 
a=a+5;  //  עם חמש יחידות נוספות a שווה לערך המקורי של a
a==5    // שווה 5 a במקום זאת בודק אם aלא מכניס חמש ל 

הצורה השנייה של שוויון, ==, אינה דרך לבצע השמה של ערך למשתנה. במקום זאת, היא בודקת לראות אם המשתנים שווים. זה שימושי באזורים אחרים של ++C כגון פקודות if ולולאות.

אתה יכול בוודאי לנחש בשביל מה ה > וה <. הם בדיקות של גדול מ וקטן מ. לדוגמא:

a<5       // קטן מחמש a בודק אם  
a>5	  // גדול מחמש a בודק אם  
a==5      // שווה לחמש, בשביל קנה מידה טוב a בודק אם  



לדף הראשון

לדף הבא >>