头文件防护

#ifndef __HEAD2__ //如果没有定义
#define __HEAD2__ //则定义 导致以下函数只会被定义一次,第二次则第一行不满组条件
int g_gloabalh2 = 9;
#endif // !__HEAD2

头文件声明命名空间

namespace lisi
{void LisiTest();//函数声明
}
// project2.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#include "head1.h"
#include "head2.h"
#include "project2.h"
#include <cstdio>//stdio.h
#include <iostream>using namespace std;
using namespace lisi;//使用命名空间 命名空间函数的声明写在头文件int main()
{int a = 13;int b = 14;const int var = 7;//一种承诺,表示这个变量的值不改变// var = 15; //会报错int& var2 = (int&)var;var2 = 18;constexpr int var3 = 1; //性能提升int var4 = 5;//constexpr int var5 = var4; //报错func(a, b); //func(int& ta, int& tb)/ 相当于 C# 中的ref out //lisi::func(a, b);cout << a << endl;cout << b << endl;cout << var << endl; //7cout << var2 << endl; //18//LisiTest();//std::cout << g_gloabalh1 << std::endl;//std::cin>> g_gloabalh1>>
}
#pragma once
#ifndef __pointerTest__
#define __pointerTest__namespace pointerT
{void pointerTest(int* n);
}#endif // !__pointerTest__;
#include <iostream>
#include "pointerTest.h"namespace pointerT
{void pointerTest(int* n){*n += 1;}
}

// CppTest1.cpp : 此文件包含 “main” 函数。程序执行将在此处开始并结束。
//

#include
#include “pointerTest.h”

using namespace pointerT;

void common(int n)
{
n += 1;
}

int main()
{
int n = 999;

common(n);
printf("%d\n", n);
printf("============\n");
pointerTest(&n);
printf("%d\n", n);

}

结果:

999

1000

// CppTest1.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//#include <iostream>
#include "pointerTest.h"using namespace pointerT;void common(int n)
{n += 1;
}int main1()
{int n = 999;common(n);printf("%d\n", n);printf("============\n");pointerTest(&n);printf("%d\n", n);return 0;
}//数组b中,b[i] 等价于 *(b+i)
int max(int* b,int num) {int max = *b;int i;for (i = 0; i < num; i++){if (*(b + i) > max){max = *(b + i);}}return max;
}int main()
{int a[10] = { 1,2,3,4,5,6,7,8,9,10 };int b[] = { 1,4,65,89,95,5,6,7.15 };/*int* p = &a[0];*/for (size_t i = 0; i<sizeof(a)/sizeof(a[0]); i++){int* p = a;p += i;printf("%d\n", *p);}printf("======--=======\n");printf("%d\n", sizeof(b));printf("======++=======\n");int num = sizeof(b) / sizeof(*b);printf("======qq=======\n");int c = max(b, num);printf("%d\n", c);}

1
2
3
4
5
6
7
8
9
10
–=
32
++=
qq=
95

VS2019 C++的环境 头文件和源文件,指针相关推荐

  1. C++ 笔记(25)— 理解 C++ 中的头文件和源文件的作用

    1. C++ 编译模式 通常,在一个 C++ 程序中,只包含两类文件: .cpp 文件,被称作 C++ 源文件,里面放的都是 C++ 的源代码 .h 文件,被称作 C++ 头文件,里面放的也是 C++ ...

  2. C++头文件和源文件,编译过程

    源文件如何根据#include来关联头文件  1.系统自带的头文件用尖括号括起来,这样编译器会在系统文件目录下查找. #include <xxx.h> 2.用户自定义的文件用双引号括起来, ...

  3. C++头文件和源文件的编译过程

    源文件如何根据#include来关联头文件 1.系统自带的头文件用尖括号括起来,这样编译器会在系统文件目录下查找. #include <xxx.h> 2.用户自定义的文件用双引号括起来,编 ...

  4. C语言头文件和源文件差异,#include两种引用方式差异

    一些初学c语言的人,不知道头文件(*.h文件)原来还可以自己写的.只知道调用系统库函数时,要使用#include语句将某些头文件包含进去.其实,头文件跟.c文件一样,是可以自己写的.头文件是一种文本文 ...

  5. C++ 头文件和源文件

    from:https://www.cnblogs.com/fenghuan/p/4794514.html C++中头文件(.h)和源文件(.cpp)都应该写些什么 头文件(.h): 写类的声明(包括类 ...

  6. 理解 C++ 中的头文件和源文件的作用

    一.C++ 编译模式 通常,在一个 C++ 程序中,只包含两类文件-- .cpp 文件和 .h 文件.其中,.cpp 文件被称作 C++ 源文件,里面放的都是 C++ 的源代码:而 .h 文件则被称作 ...

  7. 头文件和源文件不在同一个目录时头文件路径

    环境:linux,vim,youcompleteme 头文件和源文件不在一个目录下,但在导入头文件时,不想写完整的头文件路径 比如:正常导入头文件应该写成  #include "/home/ ...

  8. c 中头文件和源文件的区别是什么

    区别:头文件是".h"文件,提供接口:源文件是".cpp"文件,提供实现.编译器规定源文件必须包含函数入口,即main函数:而头文件不得包含函数入口,头文件不可 ...

  9. C++类模板怎么写在单独的头文件和源文件中

    今天打算研究研究之前我们领导写的一段关于类模板的代码,后来发现有点坑需要记录一下.以往关于C++模板基本上都是写一个demo,然后运行通过,没有软件工程的样子,所以今天我按以往的惯例写了一个类模板,打 ...

  10. 什么是c 语言中源文件,C++中头文件和源文件详细介绍

    C++中的头文件和源文件详解 一.C++编译模式 通常,在一个C++程序中,只包含两类文件--.cpp文件和.h文件.其中,.cpp文件被称作C++源文件,里面放的都是C++的源代码:而.h文件则被称 ...

最新文章

  1. 从今天开始,学习Webpack,减少对脚手架的依赖(下)
  2. 警惕!这7件事情千万不要发生你身上-来自15年程序员的忠告
  3. mysql命令去重_MySQL去重的方法整理
  4. 使用supervisor使Laravel的queue保持后台常驻
  5. error lnk2001: mysql_使用mysql时的链接错误 | 学步园
  6. Docker离线安装教程(Centos7) 转帖
  7. linux进程阻塞的原因,释放大块内存时的阻塞问题
  8. Android IntentService的使用和源代码分析
  9. 第 45 届国际大学生程序设计竞赛(ICPC)亚洲区域赛(昆明)(热身赛) C-Statues
  10. 关于资金调拨系统的设计方法论
  11. 2018年成功IPO的科技独角兽里,你最看好哪家?
  12. 写给安徽合肥高三的你——少年不惧岁月长,敢挽桑弓射玉衡
  13. 知乎万赞:什么样的程序员在35岁以后依然被公司抢着要?打破程序员“中年危机”
  14. 随机产生长度不少于6位密码
  15. 原生 JS 实现一个瀑布流插件
  16. 如何实现视频加密全平台播放
  17. 优秀,是一种生活态度
  18. Emmet语法的使用
  19. vue 网格组件_简单的Vue组件可显示带有事件的月网格日历
  20. LVGL---滚轮(lv_roller)

热门文章

  1. librosa库安装
  2. 互联网+风口直吹传统银行能否漫步起舞
  3. 开发效率提升50%以上,爱奇艺官网主站的Nuxt实践
  4. RK3399 探索之旅 / Audio 驱动层速读
  5. 魂斗罗归来大觉机器人_魂斗罗归来挑战Boss模式血量分析
  6. 【毕业设计_课程设计】基于Spring MVC的博客系统设计与实现
  7. 计算机视觉:图片缩放
  8. 李宏毅2021春季机器学习课程视频笔记14-Transformer
  9. 渗透测试学习入门级基础知识总结(必备)
  10. MATLAB人脸检测算法