news 2026/4/27 21:29:07

c语言完美演绎9-5

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
c语言完美演绎9-5

/* 范例:9-5 */

#include "file_a.cpp"

int b1; /* 全局自动初值0 */

void pp(void)

{

extern int a;

extern int c;

int b=3;

extern int varb_file_b; /* 定义于file_b,于file_a有include */

printf("a=%d varb_file_b=%d\n",a,varb_file_b);

{

extern int b1; /* 直接找文件全局 */

extern int b; /* 定义于file_a.cpp中已被展开 */

printf("b1=%d b=%d\n",b1,b);

{

extern int c;

::b1++; /* 全局b1=b1+1 (C++的运算符) */

/* ::c++; */ /* error! 变量c 未定义 */

printf("c=%d b1=%d\n",c,b1);

}

}

printf("重新声明为extern的c=%d\n",++c);

}

/* int a=1; */ /* error! 造成重复定义(已在file_a.cpp中定义过) */

int c=789;

int main(void)

{

extern int a; /* 重新声明file_a.cpp内变量a */

a++;

extern int a; /* 即使同一生命范围,也可以重新声明 */

static int b=3;

printf("a=%d b=%d\n",a,b); /* 输出为外部文件的变量a */

pp();

{

int a=33;

printf("%d\n",a); /* 局部a产生屏蔽效应,此时看不到外部变量a */

{

static int b; /* b=0 */

extern int a;

a++; /* a 定义于file_a.cpp */

printf("%d %d\n",a,b);

}

}

printf("未重新声明为extern的c=%d\n",++c);

getchar();

return 0;

}

程序执行结果:

a=6 b=3

a=6 varb_file_b=123

b1=0 b=10

c=789 b1=1

有重新声明为extern的c=790

33

7 0

未重新声明为extern的c=791

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/27 21:28:57

ICO图标批量生成工具:参数配置与场景实践

在Windows应用开发和设计工作中,ICO图标文件的制作是一个常见需求。不同于普通的PNG或JPG图片,ICO格式需要包含多种分辨率,并且要处理好透明通道等细节。本文介绍一款桌面端ICO图标生成工具的配置方法和使用场景。工具简介【ico图片制作工具】…

作者头像 李华
网站建设 2026/4/27 21:26:27

Python自动化Android设备:Google官方ADB库实战指南

1. 项目概述:当Python遇见Android,一场开发效率的革命如果你是一名Android开发者,或者对移动应用自动化、测试、设备管理感兴趣,那么你一定对ADB(Android Debug Bridge)不陌生。这个命令行工具是连接电脑与…

作者头像 李华
网站建设 2026/4/27 21:25:04

Navidrome:打造属于你的私有音乐云服务器终极指南

Navidrome:打造属于你的私有音乐云服务器终极指南 【免费下载链接】navidrome 🎧 Your Personal Streaming Service 项目地址: https://gitcode.com/gh_mirrors/na/navidrome 你是否厌倦了音乐平台的各种限制?想拥有一个完全由自己掌…

作者头像 李华
网站建设 2026/4/27 21:22:20

Awesome Codex Skills中的Helium MCP:实时新闻和市场数据分析工具

Awesome Codex Skills中的Helium MCP:实时新闻和市场数据分析工具 【免费下载链接】awesome-codex-skills A curated list of practical Codex skills for automating workflows across the Codex CLI and API. 项目地址: https://gitcode.com/GitHub_Trending/aw…

作者头像 李华
网站建设 2026/4/27 21:18:26

Steamdeck 游戏提示c++ runtime错误

在bing搜索“c库官网下载”,下载最新版本,将exe执行文件加入到steam库中,并在属性中选择兼容(将64和32位版本都进行添加)找到目录“/home/deck/.local/share/ Steam/steamapps/compatdata/”,并记录目录内已…

作者头像 李华