易截截图软件、单文件、免安装、纯绿色、仅160KB

C标识符的链接(外部链接,内部链接和无链接)

 C标识符链接有3种形式:外部链接的标识符,内部链接的标识符,无链接的标识符
外部链接的标识符:存储类标识符使用 extern 修饰,或无此类修饰符修饰(系统默认为extern )  ||可在其他源代码文件中使用
内部链接的标识符: 使用 static 修饰         || 只可在当前源代码文件中使用
无链接的标识符: 函数参数;被声明在函数内的没有extern修饰的变量(局部变量);非变量名,非函数名的标识符,如label name
一段经典例子,有助于区别和记忆:
int   func1(void);     //fuc1具有外部链接
int  a;                     //a 具有外部链接
extern int b=1;      //b具有外部链接
static int c;           // c 具有内部链接
static void  func2( int d )  // func2具有内部链接
{
     extren int a;              // a 具有外部链接
     int b =2;                  // 此b具有无链接,并将上面声明的b隐藏起来
     extern int c;          // c和上面的c一样,维持内部链接
     static int e;          //e 具有无链接
....
}


相关文档:

C_普通位运算

 源码:
# include <stdio.h>
 
int main()
{
    /* 定义了一个无符号字符型变量,此变量只能用来存储无符号数 */
    unsigned char result;
    
    int a, b, c, d;
    a = 2;
    b = 4; ......

C_初识指针

 源码:
# include <stdio.h>
 
int main()
{
    /* 定义一个整形指针p */
    int *p;
    int begin, end;
 
    begin = 10;
    /* 给指针p赋初值 */
    p = &begin;
  & ......

C_判断语句if的一般使用

源码:
# include <stdio.h>
     
int main()
{
        int x, y, z, mid, dec;
        printf("请任意输入三个整数:\n");
        scanf("%d %d %d", &x, & ......

C_使用break和continue控制循环语句

 源码:
# include <stdio.h>
 
int main( )
{
    int radius;
    double area;
    for(radius = 1; radius <= 10 ; radius++)
    {
        area = 3.1416 * radius * radius;
   ......

C_定义字符型二维数组实现简单的编辑器

 源码:
# include <stdio.h>
/* 宏定义 */
# define MAX 100
# define LEN 80
 
/* 一个非常简单的文本编辑器 */
int main()
{
    char text[MAX][LEN];  // 定义字符型数组
    register int t, i, j;    /* 定义三个寄存器变量 */
  ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号