הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   תכנות - מדריכים, code snippets (https://hosts.co.il/forums/forumdisplay.php?f=68)
-   -   [מדריך] C - מדריך למתחיל בשפת C. (https://hosts.co.il/forums/showthread.php?t=14941)

meshuga 03-02-06 23:19

[מדריך] C - מדריך למתחיל בשפת C.
 
או קי, בואו נתחיל, להתחלה בואו נהביר כי C היא לא שפת אינטרנט ובשביל להריץ אותה דרוש קומפיילר (compiler שזאת תוכנה ש"מתרגמת" למחשב את מה שכתבת בשפה, יש קומפיילר לכל שפת תיכנות).
חיפשתי ופישפשתי בגוגל בשביל להשיג לכם קומפיילר ומצאתי בבקשה:
http://community.borland.com/article...51/tcpp101.zip

תחלצו את הקבצים לתקיה ותפעילו את קובץ install, הוא ישאל אותכם איפה להתקין וכו'..לא להיבהל מכמה ישן שזה, ככה זה.
אוקי, אם התקנתם רגיל זה אמור להיות בתקיית TC->BIN->TC.EXE
או קי, אפשר להתחיל, file->new או קי, זאת הסביבת עבודה שלכם, המסך הכחול הזה.
נתחיל,
הקוד הראשון שנכתוב הוא כמובן "Hello World" המפורסם.
והוא נראה ככה בC:
קוד:

#include <stdio.h>
void main(){
printf("Hello World");
}

הרצה:
run->run או (ctrl+f9)
אם תהיה שגיאה זה לא יריץ ויפרט על השגיאה.

עכשיו נפרק את הקוד לפי שורות
1.יבוא ספריית פונקציות הכתיבה, יש המון ספריות לכל מני פונקציות..בספריות הללו נכתבו פונקציות הבסיס של שפת C וכאשר אנחנו מצרפים את
הספריה המתאימה לאותה פונקציה (יש מספר פונקציות בספריה אחת) אפשר להשתמש בפונקציה, ללא הספריה הקומפיילר "לא יכיר" את הפונקציה.
2.תחילת התוכנית.
3.הדפסת "Hello World" באמצעות פונקציית printf.
4.סיום התוכנית.

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

#include <stdio.h>
את זה:
קוד:

#include <conio.h>
ולפני סוף התוכנית (לפני {) את זה:
קוד:

getch();
על הפונקציה הזאת לא נלמד אבל, מותר להשתמש כדי לראות "מה עושים".



פקודת הprintf:
משמשת אותנו לפליטת תווים למסך (בהמשך נלמד איך לשים משתנים בפנים), היא מתחילה בגרשיים ומסתיימת בגרשיים(שנמצאים בתוך הסוגריים).

הצהרת משתנים:
כמו בכל שפה, יש שימוש במשתנים, אבל בC לא כמו בשפות הנפוצות בפורום הזה (PHP,ASP) יש הפרדה בין מספר שלם,תו,מספר לא שלם.
נתחיל במספר כי הוא הכי קל.
נעשה קוד שאומר "Hello World Number 2" בעזרת משתנה.
קוד:

#include <stdio.h>
void main(){
int Num;
Num=2;
printf("Hello World %d",Num);
}

או קי, לפי שורות
1.יבוא ספריית פונקציות הכתיבה, יש המון ספריות לכל מני פונקציות..
2.תחילת התוכנית.
3.הצהרת משתנה מסוג מספר שלם (נפרט על כך בהמשך) בשם Num
4.הכנסת ערך 2 (מספר, לא תו).
5.הדפסה "Hello World Number 2".
6.סיום התוכניות.

או קי.
עכשיו נדבר על משתנים ונחזור לקוד עוד מעט.
במשתנים יש רגישות על אותיות קטנות וגדולות מה שאומר שNum לא שווה לnum.
סוגי המשתנים (העיקריים):
int - משתנה מסוג שלם, כלומר, אי אפשר לשים בו 1.5 אבל במשתנה הזה גם יש הגבלה מספרית שהטווח שלה הוא:
(מינוס)32768 ל-32767
כדי להדפיס את משתנה זה בהדפסה צריך להשתמש ב%d.
float - משתנה מסוג לא שלם הטווח מאוד גבוה, אז אין טעם כ"כ לדבר עליו.
כדי להדפיס את המשתנה הזה צריך להשתמש ב%f.
char - משתנה מסוג תו (אחד), מקבל את הערך הASCI של התוו (כלומר, מקבל את ה"מספר הסידורי" של כל תו) כל עוד הוא לא הוגדר אחרת. הכנסת הערך מתבצעת בעזרת גרשיים (לדוגמא:'c') או ערך מספרי (ASCI).
הדפסה עם משתנים:
גם, מתבצעת עם פונקציית printf אבל עם קצת "שינויים".
השלב הראשון זה לדעת מאיזה סוג המשתנה שאתה רוצה להדפיס (במקרה שלנו מסוג מספר שלם) אז במקרה הזה נשתמש ב%d.
השלב השני שהוא אחרי סגירת הסוגריים צריך להגדיר איזה משתנה זה אז עושים עם פסיק( "," (ללא הגרשיים)) ואחרי את המשתנה (כמו שנראה בקוד הנ"ל).
כך שזה נראה ככה:
קוד:

printf("Hello World %d",Num);
מי מה ואיך:
משתנה מסוג מספר שלם (int) נכתב עם %d
משתנה מסוג מספר לא שלם (float) נכתב עם %f (מודפס עם 6 אפסים אחרי הנקודה, נלמד לבטל את זה מאוחר יותר במדריך אחר)
משתנה מסוג תו (char) נכתב עם %c

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


טוב, השעה לא מאוחרת אבל אני די עייף הערות הארות יתקבלו בברכה ועם הזמן אני ישכתב אותו בהתאם לתגובות שלכם.
יום טוב.(לילה טוב יותר נכון)


אגב, ילדי כיתות ט' שפה...אם אתם לוקחים שנה הבאה מדעי המחשב..תתחילו להתרגל לקומפיילר ;)

somebody 03-02-06 23:25

חח אתה מלמד כמו בסדר שמלמדים בבצפר ;)
יפה יפה!

גם אותכם לא למדו על string?
כאילו לא משתמשים במסוג הזה משומה|:

meshuga 03-02-06 23:28

ציטוט:

נכתב במקור על ידי somebody
חח אתה מלמד כמו בסדר שמלמדים בבצפר ;)
יפה יפה!

גם אותכם לא למדו על string?
כאילו לא משתמשים במסוג הזה משומה|:

זה שלא לימדו זה לא אומר שאני לא יודע ;)
סתם, אממ..אני יודע קצת....פה ושם מערכים פה ושם גראפיקה וכו'....
כל מני...וזה כ"כ שונה מPHP שזה מצייייקקקק......
ד"א
צרף אותי למסנג'ר (מופיע בדף צור קשר בפורום מנהלים).

Dima 04-02-06 00:02

זה רק אני? או שכשמתקינים את המהדר אין קובץ הרצה בכלל?

meshuga 04-02-06 00:04

ציטוט:

נכתב במקור על ידי Dima
זה רק אני? או שכשמתקינים את המהדר אין קובץ הרצה בכלל?

bin->tc.exe
צודק, שכחתי להזכיר שזה לא בתקיה הראשית של הקומפיילר.

Dima 04-02-06 00:06

ציטוט:

נכתב במקור על ידי meshuga
bin->tc
צודק, שכחתי להזכיר שזה לא בתקיה הראשית של הקומפיילר.


ככה יותר טוב :)

עריכה: כל הקודים שעשית עכשיו, שגויים, המהדר פשוט לא מקבל אותם.

Deagly 04-02-06 00:18

מדריך נחמד למתחילים
הנה אתר גם מומלץ ללמוד ממנו- http://clang.eitan.ac.il
ובמדריך שרשמת שחכת ב include לעשות לפני זה #
כלומר:
קוד:

#include <stdio.h>
#include <conio.h>

וכו'.. :)

meshuga 04-02-06 00:19

ציטוט:

נכתב במקור על ידי Deagly
מדריך נחמד למתחילים
הנה אתר גם מומלץ ללמוד ממנו- http://clang.eitan.ac.il
ובמדריך שרשמת שחכת ב include לעשות לפני זה #
כלומר:
קוד:

#include <stdio.h>
#include <conio.h>

וכו'.. :)

טעות קריטית מצידי!!!......אני לא מאמין ששכחתי....
תודה רבה רבה על התיקון!

bestdesign 04-02-06 09:57

מדריך מצוין.

אני ממליץ לך גם ללמד קלט scanf קצת לולאות for ו while ואופרטורים, כי אלו הבסייסיים באמת.

יישר כוח.

iBain 04-02-06 10:49

אני אלמד D:

אז ככה

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


מגדירים לדוגמא משתנה מסוג INT שנקרא I
עושה ככה
PHP קוד:

int i

** INT הוא למספרים שלמים שבין 32 אלף ל -32 אלף אם אני זוכר טוב,
את האופרטורים משוגע כתב לכם כבר ,

אז ככה עכשיו שואלים את המשתמש מה הוא מעונין להקליד לדוגמא:
PHP קוד:

printf("please enter a number"); 

יפה? עכשיו הוא יציג לכם " PLEASE ENTER A NUMBER "

עכשיו כדי לקלוט את המידע את צריכים לעשות

PHP קוד:

scanf("%d",&i); 

ועכשיו כדי להציג את המידע שנקלט והוכנס למשתנה I עושים ככה:

PHP קוד:

printf("you enter %d",i); 



כל הזמנים הם GMT +2. הזמן כעת הוא 00:48.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ