extern, const ו static אחת ולתמיד
אני יודע שהרבה מתבלבלים בין אלה. האם תוכלו להסביר לי מה התפקיד של כל אחד?? (כמובן ב c) האם ההבדל בין static ל const, הוא שאחד מהם שומר ערך שאי אפשר לשנות אותו בשום דרך, והשני מגדיר משתנה שיהיה לוקאלי לפונקציה, זתומרת שהפונקציה תוכל לשנות אותו, אבל שאר התוכנית לא תוכל לפנות אל המשתנה הספציפי הזה, אבל תוכל להשתמש במשתנה אחר עם אותו השם?? (כי הרי הראשון חי רק בפונקציה.) האם extern פשוט מגדיר משתנה או פונקציה "חיצונית" ?? זתומרת אם אני מגדיר extern איפהשהוא לדוגמא בקובץ 1.c ואני גם משתמש בקובץ 2.c לפרוייקט, אז בקובץ 2, אני יכול לפנות לאותו המשתנה, והוא יהיה "קיים" בכל הפרוייקט?? אותו דבר עם פונקציות-קריאה לפונקצית extern שממוקמת ב 1 מתוך קובץ 2? עכשיו לשאלה-האם מישהו יכול להגיד לי אם קלעתי אפילו קצת, ולהסביר קצת על ההבדלים בניהם?? ויש עוד משהו (סוג) שאני צריך לדעת חוץ מה3 האלה?
אני יודע שהרבה מתבלבלים בין אלה. האם תוכלו להסביר לי מה התפקיד של כל אחד?? (כמובן ב c) האם ההבדל בין static ל const, הוא שאחד מהם שומר ערך שאי אפשר לשנות אותו בשום דרך, והשני מגדיר משתנה שיהיה לוקאלי לפונקציה, זתומרת שהפונקציה תוכל לשנות אותו, אבל שאר התוכנית לא תוכל לפנות אל המשתנה הספציפי הזה, אבל תוכל להשתמש במשתנה אחר עם אותו השם?? (כי הרי הראשון חי רק בפונקציה.) האם extern פשוט מגדיר משתנה או פונקציה "חיצונית" ?? זתומרת אם אני מגדיר extern איפהשהוא לדוגמא בקובץ 1.c ואני גם משתמש בקובץ 2.c לפרוייקט, אז בקובץ 2, אני יכול לפנות לאותו המשתנה, והוא יהיה "קיים" בכל הפרוייקט?? אותו דבר עם פונקציות-קריאה לפונקצית extern שממוקמת ב 1 מתוך קובץ 2? עכשיו לשאלה-האם מישהו יכול להגיד לי אם קלעתי אפילו קצת, ולהסביר קצת על ההבדלים בניהם?? ויש עוד משהו (סוג) שאני צריך לדעת חוץ מה3 האלה?