C++笔记009:C++对C的扩展——“实用性”增加
原创笔记,转载请注明出处!
点击【关注】,关注也是一种美德~
笔记八中已经说到:在 C语言中定义了3个层次的作用域,即文件(编译单元)、函数和复合语句。
C语言中的变量都必须在作用域开始的位置定义!
C++中更强调语言的“实用性”,所有的变量都可以在需要使用时再定义。
我们用VC++6.0和VS2010进行演示。
先用VC++6.0建立一个.c的文件
#include<stdio.h>
void main()
{
int i;
int k;
printf("hello world\n");
i=10;
k=10;
printf("i:%d k:%d\n",i,k);
}
运行程序:
hello world
i:10 k:10
请按任意键继续. . .
运行没有问题,但是C语言里面如果把变量k的定义放到一条不是定义语句后面,那么运行就会报错。
#include<stdio.h>
void main()
{
int i;
//int k;
printf("hello world\n");
int k; //错误
i=10;
k=10;
printf("i:%d k:%d\n",i,k);
}
同样的代码我们用VS2010建立一个.cpp文件,运行程序没有问题:
我们还注意到,在.c文件中没有“system(“pause”)”语句,我们运行程序后显示窗口不会一闪而过,而在.cpp文件中我们如果没有这个语句显示窗口就会一闪而过。
#include<iostream>
using namespace std;
void main()
{
int i;
//int k;
printf("hello world\n");
int k;
i=10;
k=10;
printf("i:%d k:%d\n",i,k);
system("pause");
}
原创笔记,转载请注明出处!
更多精彩请关注微信公众号:依法编程
最新文章
- Java中普通代码块,构造代码块,静态代码块区别及代码示例
- UIautomator Python测试
- Mvc 提交表单的4种方法全程详解
- 如何使用 HTML5 Canvas 制作水波纹效果
- 微信video标签全屏无法退出bug 本文系转载
- Java基础——异常体系
- openstack私有云布署实践【13.1 网络Neutron-compute节点配置(科兴环境)】
- 完美解决ie浏览器location.href不刷新页面的问题,进入页面只刷新一次
- 【转】国外程序员整理的 C++ 资源大全
- 为什么用CDN给你网站加速?
- 只用120行Java代码写一个自己的区块链
- mongoDB的安装及基本使用
- WebStorm重复代码快捷表达
- jquery+ajax无刷新加载数据,新闻浏览更多
- wx小程序获取用户位置信息
- Unity鼠标点击Collider
- Yarn import now uses package-lock.json
- 何为session?
- java-ApiValueDemo
- iOS 认识runtime 中的三个指针 isa , IMP , SEL
热门文章
- CSS3,transform3D立体可拖拽正方体实现原理
- JavaScript中sort()方法
- html的文件控件<;input type=";file";>;样式的改变
- java 中linq 的使用方式 筛选 查找 去重
- Docker_1 安装Docker-CE
- QT控件大小的方法
- MEGER sentence in oracle
- 【系统】在windows中追加/删除虚拟打印机
- ASP.NET Core - 中间件与管道(1)
- 用phpstudy搭建的lnmp环境下mysql授权远程连接