דף הבית שיעורים תוספות לא מונחות עצמים הכרזת פונקציה
 
הכרזת פונקציה
 
לפניך הכרזה (prototype) של פונקציה והגדרתה (definition):

long Sum(int a);

long Sum(int a)
{
 int i;
 long sum = 0;
 for (i = 1; i<=a; i++)
  sum += i;
 return sum;
}
העבר את העכבר על שורות הקוד בכדי לקבל הסבר מפורט

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

void main()
{
 Sum(5);
}

long Sum(int a)
{
 int i;
 long sum = 0;
 for (i = 1; i<=a; i++)
  sum += i;
 return sum;
}
העבר את העכבר על שורות הקוד בכדי לקבל הסבר מפורט

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

long Sum(int a);

void main()
{
 Sum(5);
}

long Sum(int a)
{
 int i;
 long sum = 0;
 for (i = 1; i<=a; i++)
  sum += i;
 return sum;
}
העבר את העכבר על שורות הקוד בכדי לקבל הסבר מפורט