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 具有无链接
....
}
相关文档:
源码:
# include <stdio.h>
int main()
{
int x, y, num1, num2, temp;
printf("请输入两个正整数:\n");
scanf("%d %d", &num1, &num2);
if(num1 < num2)
......
源码:
/* 学生成绩查询系统 */
# include <stdio.h>
# include <stdlib.h>
int main( )
{
int select;
int i, j;
int score[5][7];
int average = 0;
int sum = 0;
&n ......
源码:
# include <stdio.h>
/* 子函数声明 */
int square(int x); // 实现求平方值的子函数
int cube(int y); // 实现求立方值的子函数
int main()
{
int m = 12;
int n = 4;
printf("%d %d\n", sq ......
源码:
# include <stdio.h>
void swap(int *x, int *y);
int main()
{
int i, j;
i = 12;
j = 36;
printf("i and j before swapping: %d %d\n", i, j);
&nbs ......
即使将VirtualBox安装到别的盘上,其做成的虚拟机(系统,硬盘)仍会默认生成到系统盘,默认C:盘上,随着虚机数量和内容增加挤占了本来就不大的系统盘空间,很是不便。
开始将C:盘下.VirtualBox目录下的东西全盘拷贝至别处,然后在VirtualBox的文件/环境设置 中将『默认硬盘目录』和『默认假想机器』做相应的修 ......