搬瓦工官网中国镜像站:https://bwh81.net(搬瓦工官方网站,放心访问)
搬瓦工官方中文网:https://bwh86.net
搬瓦工官网所有方案以及库存监控页面:https://bwh86.net/monitor
最新搬瓦工最大优惠力度优惠码(循环优惠6.58%):BWHNCXNVXV
搬瓦工新用户注册和图文购买教程:点击查看
我相信这篇文章对于C初学者将像对C精通者一样有趣且有启发性。因此,让我首先说extern关键字适用于C变量(数据对象)和C函数。基本上,extern关键字扩展了C变量和C函数的可见性。这可能就是它被命名的原因extern。
尽管大多数人可能理解变量或函数的“声明”与“定义”之间的区别,但是为了完整起见,我想对其进行澄清。
1.声明变量或函数仅声明变量或函数存在于程序中的某个位置,但未为它们分配内存。变量或函数的声明起着重要的作用-告诉程序其类型将是什么。如果是函数声明,它还会告诉程序参数,其数据类型,这些参数的顺序以及函数的返回类型。这就是声明。
2.关于定义,当我们定义一个变量或函数时,除了声明所做的一切外,它还为该变量或函数分配内存。因此,我们可以将定义视为声明的超集(或声明作为定义的子集)。
变量或函数可以声明多次,但只能定义一次。(请记住基本原则,即不能有两个位置具有相同的变量或函数)。
现在回到extern关键字。首先,让我们考虑使用externin函数。事实证明,在声明或定义函数时,将extern隐式假定该关键字。当我们写的时候。
编译器将其视为:
由于extern关键字将功能的可见性扩展到整个程序,因此该功能可以在整个程序的任何文件中的任何位置使用(调用),只要这些文件包含该功能的声明即可。(在适当的位置声明了函数,编译器知道该函数的定义存在于其他地方,并且可以继续编译文件)。这就是extern功能。
现在让我们考虑使用externwith变量。首先,如何在不定义变量的情况下声明变量?您将执行以下操作:
在这里,var已经声明了一个称为的整数类型变量(尚未定义,var因此到目前为止没有内存分配)。我们可以根据需要进行多次声明。到现在为止还挺好。
现在,您将 如何定义var?您可以这样做:
在这一行中,var已经声明并定义了一个名为的整数类型变量(请记住,定义是声明的超集)。由于这是一个定义,因此var还分配了内存。当我们声明/定义一个函数时,我们看到extern关键字隐式存在。但是变量不是这种情况。如果是这样,将永远不会为他们分配内存。因此,extern当我们要声明变量而不定义它们时,我们需要显式地包含关键字。另外,随着extern关键字的使用,扩展了整个程序的可见性extern 带有变量的关键字,我们可以在程序中的任何位置使用该变量,前提是我们要包含该变量的声明,该变量是在某个位置定义的。
现在让我们尝试extern通过示例来理解。
示例一:
示例二:
该程序编译成功。var仅在这里声明。注意var从未使用过,因此不会出现问题。
范例3:
由于var已声明但未在任何地方定义,因此该程序在编译中引发错误。本质上,var没有分配任何内存。并且程序正在尝试将根本不存在的变量的值更改为10。
您认为该程序有效吗?好吧,这是C标准带来的另一个惊喜。他们说:如果仅声明一个变量,并且该声明还提供了一个初始化程序,则将分配该变量的内存,换句话说,该变量将被视为已定义。因此,根据C标准,该程序将成功编译并运行。
因此,这是extern对C语言中关键字的初步了解。
简而言之,我们可以说:
声明可以进行多次,但定义只能进行一次。
所述extern关键字被用于扩展的变量/函数的可见性。
由于默认情况下函数在整个程序中都是可见的,extern因此在函数声明或定义中不需要使用。它的使用是隐式的。
当extern与一个变量使用,它只是声明,没有定义。
作为例外,在extern使用初始化声明变量时,也将其视为变量的定义。
了解更多,领取免费学习资料以及教程,请查看下方图片
搬瓦工机房方案整理
搬瓦工目前提供了4个方案,包括搬瓦工KVM方案,搬瓦工CN2 GT方案,搬瓦工CN2 GIA-E方案和搬瓦工香港方案,每种方案有多种套餐配置,详细的配置和价格整理如下:套餐名称 | CPU | 内存大小 | 硬盘容量 | 每月流量 | 带宽 | 价格/年 | 购买链接 |
---|---|---|---|---|---|---|---|
搬瓦工CN2-E限量版(搬瓦工补货通知群(禁言,仅推送):903230558) | |||||||
CN2 GIA LIMITED EDITION | 1核 | 1 GB | 10 GB | 500 GB | 1 Gbps | $89.99 | 立即购买 |
搬瓦工CN2 GT方案 | |||||||
CN2 | 1核 | 1024 MB | 20 GB | 1000 GB | 1 Gbps | $49.99 | 立即购买 |
CN2 | 1核 | 2048 MB | 40 GB | 2000 GB | 1 Gbps | $99.99 | 立即购买 |
CN2 | 2核 | 4096 MB | 80 GB | 3000 GB | 1 Gbps | $199.99 | 立即购买 |
CN2 | 2核 | 8 GB | 160 GB | 5000 GB | 1 Gbps | $399.99 | 立即购买 |
CN2 | 3核 | 16 GB | 320 GB | 8000 GB | 1 Gbps | $799.99 | 立即购买 |
CN2大流量 | 3核 | 16 GB | 320 GB | 12000 GB | 1 Gbps | $899.99 | 立即购买 |
CN2大流量 | 3核 | 16 GB | 320 GB | 16000 GB | 1 Gbps | $1299.99 | 立即购买 |
搬瓦工CN2 GIA-E方案(可选搬瓦工DC9 CN2 GIA,搬瓦工DC6 CN2 GIA,搬瓦工日本大阪软银线路) | |||||||
CN2 GIA ECOMMERCE | 2核 | 1 GB | 20 GB | 1000 GB | 2.5 Gbps | $169.99 | 立即购买 |
CN2 GIA ECOMMERCE | 3核 | 2 GB | 40 GB | 2000 GB | 2.5 Gbps | $299.99 | 立即购买 |
CN2 GIA ECOMMERCE | 4核 | 4 GB | 80 GB | 3000 GB | 2.5 Gbps | $549.99 | 立即购买 |
CN2 GIA ECOMMERCE | 6核 | 8 GB | 160 GB | 5000 GB | 5 Gbps | $879.99 | 立即购买 |
CN2 GIA ECOMMERCE | 8核 | 16 GB | 320 GB | 8000 GB | 5 Gbps | $1599.99 | 立即购买 |
CN2 GIA ECOMMERCE | 10核 | 32 GB | 640 GB | 10000 GB | 10 Gbps | $2759.99 | 立即购买 |
CN2 GIA ECOMMERCE | 12核 | 64 GB | 1280 GB | 12000 GB | 10 Gbps | $5399.99 | 立即购买 |
搬瓦工香港方案 | |||||||
香港CN2 GIA | 2核 | 2048 MB | 40 GB | 500 GB | 1 Gbps | $899.99 | 立即购买 |
香港CN2 GIA | 4核 | 4096 MB | 80 GB | 1000 GB | 1 Gbps | $1559.99 | 立即购买 |
香港CN2 GIA | 6核 | 8192 MB | 160 GB | 2000 GB | 1 Gbps | $2999.99 | 立即购买 |
香港CN2 GIA | 6核 | 16384 MB | 320 GB | 4000 GB | 1 Gbps | $5899.99 | 立即购买 |
搬瓦工日本方案 | |||||||
日本CN2 GIA | 2核 | 2048 MB | 40 GB | 500 GB | 1.2 Gbps | $899.99 | 立即购买 |
日本CN2 GIA | 4核 | 4096 MB | 80 GB | 1000 GB | 1.2 Gbps | $1559.99 | 立即购买 |
日本CN2 GIA | 6核 | 8192 MB | 160 GB | 2000 GB | 1.2 Gbps | $2999.99 | 立即购买 |
日本CN2 GIA | 6核 | 16384 MB | 320 GB | 4000 GB | 1.2 Gbps | $5899.99 | 立即购买 |
搬瓦工KVM方案 | |||||||
KVM | 2核 | 1024 MB | 20 GB | 1 TB | 1 Gbps | $49.99 | 立即购买 |
KVM | 3核 | 2 GB | 40 GB | 2 TB | 1 Gbps | $99.99 | 立即购买 |
KVM | 4核 | 4 GB | 80 GB | 3 TB | 1 Gbps | $199.99 | 立即购买 |
KVM | 5核 | 8 GB | 160 GB | 4 TB | 1 Gbps | $399.99 | 立即购买 |
KVM | 6核 | 16 GB | 320 GB | 5 TB | 1 Gbps | $799.99 | 立即购买 |
KVM | 7核 | 24 GB | 480GB | 6 TB | 1 Gbps | $1,199.99 | 立即购买 |
还木有评论哦,快来抢沙发吧~