| kadai48a.c | 
| 
extern int sum;       /* どこか他で宣言されている変数 */
extern int inc(void); /* どこか他で宣言されている関数 */
void goukei(int n)
{
    do {
      sum += inc();
    }
    while (--n > 0);
}
 | 
| kadai48b.c | 
| 
int sum;
int inc(void)
{
    return ++sum;
}
 | 
| main.c | 
| 
int sum; /* 共有しようとする変数の宣言 */
int main(void)
{
    sum = 0;
    goukei(100);
    printf("合計は %d\n", sum);
    return 0;
}
 | 
cc kadai48a.c kadai48b.c kadai48c.c -o kadai48