前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C++常见问题系列(一)——基础问题

C++常见问题系列(一)——基础问题

作者头像
深度学习思考者
发布2018-01-03 11:01:56
7650
发布2018-01-03 11:01:56
举报

一 三种基本数据类型 整数型,浮点型和void型;其中表示整数、字符和布尔值的算术类型合称为整形。 二 操作符 操作符说明了表达式的主要目的,并且计算返回结果。按照功能区分操作有算术操作符、关系操作符、逻辑操作符、条件操作符等,不同优先级决定了表达式的运算顺序。 三 自增自减

代码语言:javascript
复制
int i=0,j;
j = ++i;  //前自增操作,结果j=1,i=1 (优先级大于=,先自加)
j = i++;  //后自增操作,结果j=1,i=2 (其优先级小于赋值运算符,则先执行=,表达式的值不会发生改变)

注意:变量的自增自减是修改变量的值,指针的自增自减是修改指针的指向地址。

四 变量的声明、定义与引用 声明的主要目的是表明变量的类型和名称,定义的主要目的是为变量分配存储空间,引用主要用作函数的形式参数。

代码语言:javascript
复制
extern int a; //extern关键字声明变量名但不定义
int a = 100;
int &reta = a;

五 变量的四种存储类型 自动类型,寄存器类型,外部类型(extern必须是全局变量),静态类型(static,在程序运行过程中静态变量始终占用一个存储空间)

六 关于const const引用是指向const对象的引用,const引用必须被定义为const类型。

代码语言:javascript
复制
const int a = 10;
const int &reta = a;
int &reta = a; //错误的,引用必须定义const类型

七 break与continue区别 continue语句只能出现在循环语句中,而break语句可出现在switch语句,continue语句不会退出循环,只会终止当次执行循环体并且进入下一次循环体的执行,break语句会退出循环语句。

八 递归 一个过程或函数直接或间接调用自己本身,这种过程或函数叫递归过程或递归函数。 例子:汉诺塔问题

代码语言:javascript
复制
void Move(int n,char i,char j)
{
    cout<<"send"<<n<<"from"<<i<<"to"<<j<<endl;
}
void Hannoi(int n,char a,char b,char c)
{
    if (n ==1)
    {
        Move(1,a,c)
    }
    else
    {
        Hannoi(n-1,a,c,b);
        Move(n,a,c);
        Hannoi(n-1,b,a,c);
    }
}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2016年05月11日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档