一编译

说明函数fun 重定义了。

我们说函数的定义一定要写在源文件中,为什么不能写在头文件中?因为头文件要在我们的项目中在多个位置被包含,头文件的本质就复制替换。如果函数定义写在了头文件中,那么就相当于在程序的多个位置,出现了和 fun 同名的函数。所以函数的定义要写在源文件中,而源文件不会被包含,所以源文件中的内容一定是独一份的。

这里为什么fun会 重定义呢?

之前说过,像结构体只是在所在的文件中可见,在一个文件中定义了 struct cc 这个结构体,在另一个文件中再定义 struct cc 这个结构体,他俩之间没有任何的关系。只在自己所在的文件中可见。

而函数的定义是只能存在一份,相当于是全局的!也就是整个工程都只能存在一个fun。fun在任何位置都好使。

所以,定义放在源文件中,声明(宏,typedef,结构体的声明,函数声明)放在头文件中。

另外  一个问题

如果想要结构体互相嵌套的时候,要使用指针。为什么?

因为指针不管是什么类型的,在32位编译器环境下就是4字节。

所以

结构体中出现未定义 这个问题就是未知大小!

转载于:https://www.cnblogs.com/dabing0983/p/10559556.html

179一个错误的认识相关推荐

  1. 处理程序“WebServiceHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”

    HTTP 错误 500.21 - Internal Server Error 处理程序"WebServiceHandlerFactory-Integrated"在其模块列表中有一个 ...

  2. 错误:处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”

    开发web项目时需要安装IIS,在安装好IIS的Windows7本上发布asp.net网站时,web程序已经映射到了本地IIS上,但运行如下错误提示"处理程序"PageHandle ...

  3. asp.net发布到IIS中出现错误:处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”...

    开发web项目时需要安装IIS,在安装好IIS的Windows7本上发布asp.net网站时,web程序已经映射到了本地IIS上,但运行如下错误提示"处理程序"PageHandle ...

  4. 我犯了一个错误,您能指出吗?

    这是我最近在项目中犯的一个错误,您能指出吗? 这个项目在数据访问方面使用了传统的Repository模式.为此,我定义了一个Repository基类,可以让每个不同的Repository继承它: pu ...

  5. struts2文件上传一个错误的解决

    struts2文件上传一个错误的解决 在做struts2的多文件上传时,选择了几个比较大的文件,点击"提交"后,画面没有提示说文件太大,而是清空了各个表单项,查看控制台显示如下错误 ...

  6. mysql里制造一个错误

    最近突然想到的,由于在触发器中执行失败事务性表会自动回滚. 所以就想制造一个错误,在群里问了问最后还真得到一个制造错误的方法,或者可以叫做自定义异常 SIGNAL SQLSTATE '45000' S ...

  7. javadoc: 错误 - 格式错误的语言环境名称_ONLYOFFICE 5.6.0 : 这是一个错误修正版本,改进了德语、法语、意大利语、葡萄牙语和俄语的翻译等...

    ONLYOFFICE 5.6.0 从此版本开始,我们更改了DocumentServer的编号方案. 这是一个错误修正版本. 具有一系列新功能的下一个主要版本将是6.0.0 修正 所有编辑 •修复形状的 ...

  8. 记使用WaitGroup时的一个错误

    记使用WaitGroup时的一个错误 近期重构我之前写的server代码时,不当使用了WaitGroup,碰到了个错误,记录下. package mainimport ("fmt" ...

  9. MMC检测到此管理单元发生一个错误。建议关闭并重新启动MMC

    MMC检测到此管理单元发生一个错误.建议关闭并重新启动MMC 要变通解决此问题, 请按照下列步骤操作进入 WMI MMC 管理单元: 1. 开始--运行--输入mmc然后单击 确定 . 2. 在 文件 ...

最新文章

  1. 【12】AngularJS 事件
  2. 福禄克2500V数字绝缘电阻测试仪开箱与上手实测
  3. 第28月第10天 iOS动态库
  4. 每一个正整数可以表示为3个三角形数之和
  5. 洛谷 题解 P2312 【解方程】
  6. 在演唱过后的飞秋代码
  7. oracle 数据补齐月份,Oracle自定义函数--增加月份
  8. ipython安装成功后用不了_Python常用工具ipython安装与使用
  9. SMD和SMT的区别
  10. windows11的ps界面字体显示过小
  11. template用法
  12. 解决:Activiti7与SpringBoot整合时,默认生成的activiti数据库中只有17张表,无另外8张历史表
  13. 如何用计算机表达无理数,科学网—刘瑞祥:计算机表示无理数的一些设想 - 孙冰的博文...
  14. 计算机通信与网络(一)—— 绪论
  15. TVS 管选型与 ESD 防护设计
  16. JAVA中创建线程的三种方法及比较
  17. FreeRTOS 任务优先级说明
  18. 大数据体系的4个热点,4个趋势和3个疑问
  19. C++友元函数实现两个复数相加
  20. 天宇,snapseed,第四课,风光照片调整

热门文章

  1. Python之IPython开发实践
  2. liunx 常用命令-cut
  3. CSS——icon 全解
  4. linux下面把png文件转化为背景透明
  5. linux下面安装Matlab2017b、快捷键修改、修改背景颜色(转载+自己整理)
  6. debian/ubuntu19.10下安装使用护眼软件f.lux
  7. 补码为什么要取反加1?
  8. Linux下多显卡选择绘制实验记录
  9. 深度学习(四十五)——Stack GAN, GAN Ensemble, Pix2Pix, CycleGAN
  10. python查找文字在图片中的位置_图片中的文字竟然能如此快速提取?OCR文字识别功能简直太强大了...