codice:
/* main.c */
#include <stdio.h>
#include "extern_const.h"
int main (void){
printf ("my_extern_const_1: %s;\n", my_extern_const_1);
printf ("my_extern_const_2: %s;\n", my_extern_const_2);
return 0;
}
codice:
/* extern_const.h */
#ifndef extern_const_h
#define extern_const_h
extern const char my_extern_const_1 [];
extern const char * my_extern_const_2;
#endif
codice:
/* extern_const.c */
#include "extern_const.h"
const char my_extern_const_1 [] = "my extern const 1";
const char * my_extern_const_2 = "my extern const 2";
codice:
$ gcc --version
i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1 (Apple Computer, Inc. build 5367)
Copyright (C) 2005 Free Software Foundation, Inc.
$ gcc -Wall -ansi -pedantic -Wextra -Wconversion main.c extern_const.c
$ ./a.out
my_extern_const_1: my extern const 1;
my_extern_const_2: my extern const 2;