0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

C++学习笔记之c++的基本认识

jf_78858299 来源:QStack 作者:月下西楼 2023-03-17 13:57 次阅读

由于工作与视频编辑相关,所以想补充一下OpenGL和C++相关的知识,之后可能会通过两个系列来记录下自己的学习内容,如果能够帮助到同样有需要的人自然再好不过。

前言

自这篇文章我们即将开始C++的奇幻之旅,其内容主要是读C++ Primer的总结和笔记,有兴趣可以找原版书看看,对于学习C++还是有很大帮助的。这篇文章将从一个经典的程序开始介绍C++的类型、变量、表达式、语句、控制流和函数的相关内容,由此可以建立起对于C++总体上的认识。

一个简单的程序

每一个C++程序都包含了一个或多个函数,其中main函数是必须的,所以一个C++程序至少含有一个main函数,操作系统通过调用main函数来执行你写的C++程序。下面就是一个简单的C++程序,只包含了一main函数。如代码所示,一个函数至少包含四个部分,返回类型、函数名、参数列表和函数体。这个main函数返回值是int,这是C++的内置类型(是由语言本身定义的), main是函数名,()中是参数列表(可以为空), 最后{}中的是函数体,是函数执行的具体过程。在例子中只包含了一个语句,return会终止函数执行并返回一个值(0)给函数调用者,0是int类型,也就是整数。函数的返回值要与函数定义的返回类型相同,否则会产生错误,无法编译通过。

int main()
{
    return 0;
}

❝在大多数情况下main函数的返回值是一个标志位,如果是0表示程序执行成功,如果返回非0则表述程序执行失败

输入输出

在程序执行过程中需要与外部进行交互,但是C++并未为输入输出提供专门的语句,而是提供了扩展库iostream来实现输入输出。该库提供了两个基类,一个是ostream用于输出流,istream用于输入流,并且提供了四种IO对象,分别是cin,cout, cerr和clog,cin是用于处理标准输入,其发音类似于see in,cout用于处理标准输出,发音类似see out,cerr是用于输出erro和warning,clog则是用于输出程序执行过程中的重要信息。以下就是一个简单却简单的程序,会在屏幕上打印“hello w orld”。其中std::cout<<"hello world"<是一个表达式,表达式一般由一个或多个操作数和(通常)一个操作符组成,其中<<是输出操作符,用于标准输出,输出操作符需要包含两个操作数,在输出操作符的左侧必须是ostream对象,右侧则是需要输出的值。可以看到连续使用了两次输出操作符,那是因为输出操作符的返回值为ostream对象。

`

# include
int main() {
    std::cout<<"hello world"<return 0;
}
;>

从下面例子可以看出cin和cout用法类似,需要用>>输入标识符。

❝可以注意到,我们使用的是std::cout而不是cout,std是命名空间,命名空间是为了我们定义的函数与变量与库中的函数与变量命名冲突,std是标准库的命名空间。::是范围操作符,``std::cout```代表着我们使用的cout是定义在std的命名空间中。

# include
int main() {
    std::cout<<"please enter two numbers:"<int v1, v2;
    std::cin>>v1>>v2;
    std::cout<<"The sum of v1 and v2 is "<return 0;
}
;>

运行结果如下

please enter two numbers:
3 4
The sum of v1 and v2 is7

注释

我们写的例子都是极其简单的程序,在实际的生产环境中,程序会十分的复杂,必】注释是比不可少的,C++的注释分为单行注释和多行注释。C++使用//进行单行注释,/**/实现多行注释,注释最好不要嵌套。

控制流

C++的控制流于C语言Java的控制流并没有多大的差别,while和for循环,if判断语句。

while语句

当while中的判断条件为true是会循环执行while内的语句

# include
int main() {
    int sum = 0;
    while(i <= 10) {
        sum  = sum + i;
        i++;
    }
    std::cout<return 0;
}
<

for 循环

# include
int main() {
    int sum = 0;
     for(int i = 0; i <= 10; ++i) {
        sum = sum + i;
    }
    std::cout<return 0;
}
<

if语句

# include
int main() {
    int value;
    int curValue;
    int sum = 0;
    if(std::cin>>value){
        while (std::cin>>curValue)
        {
            if (value == curValue) {
                sum = sum + 1;
            } else {
                std::cout<return 0;
            }
        }
    }
    return 0;
}
<

最后

通过这篇文章,我们已经对C++有了基本的认识,初步了解了一个C++程序的基本组成,了解了输入输出,命名空间,注释,控制流。更多文章可以关注微信公众号QStack。

`
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 函数
    +关注

    关注

    3

    文章

    4332

    浏览量

    62638
  • C++
    C++
    +关注

    关注

    22

    文章

    2109

    浏览量

    73663
  • primer
    +关注

    关注

    0

    文章

    23

    浏览量

    10035
收藏 人收藏

    评论

    相关推荐

    C++STL算法(二)

    C++STL算法(二)
    的头像 发表于 07-18 14:49 1056次阅读
    <b class='flag-5'>C++</b><b class='flag-5'>之</b>STL算法(二)

    c++STL算法(三)

    c++STL算法(三)
    的头像 发表于 07-18 15:00 1297次阅读
    <b class='flag-5'>c++</b><b class='flag-5'>之</b>STL算法(三)

    C++文件操作

    C++文件操作
    的头像 发表于 07-21 10:52 1116次阅读
    <b class='flag-5'>C++</b><b class='flag-5'>之</b>文件操作

    如何学习C++,如何学好C++

    最近,很多学员都给我发邮件问我应该如何学习C++,如何学好C++?那么作为一个从C语言小白摸爬滚打、入坑无数到成长为如今的高级C++游戏开发
    发表于 08-20 06:27

    学习C++的方法以及C++的就业方向

    学习方向:嵌入式+人工智能嵌入式是一门技术学习目标1.嵌入式开发概述;(面向对象在嵌入式开发中角色)2.嵌入式Linux C++编程;(C++概述、
    发表于 12-24 07:32

    在main文件中怎样去使用C++

    ESP32 ESP-IDF 学习笔记(五 - 2)【使用C++的工程】文章目录ESP32 ESP-IDF
    发表于 01-07 07:44

    C++简介 ppt

    C++简介 目录1.0  本科程在专业学习中的地位1.1  程序设计语言 1.2  C++前史 1.3  C++ 1.4 
    发表于 02-24 09:34 28次下载

    C++ 入门自学教程

    C++ 入门自学教程从入门知识开始讲起,比较有利于初学者入门掌握,比较好懂,能够对C++有一个全面认识
    发表于 11-17 10:36 0次下载

    C++语言学习提纲

    C++语言学习提纲
    发表于 12-30 14:50 0次下载

    C++“指针”学习建议

    C++“指针”学习建议
    发表于 03-31 15:53 3次下载

    C++入门教程之C++程序设计的课件资料免费下载

    本文档的主要内容详细介绍的是C++入门教程之C++程序设计的课件资料免费下载主要内容包括了:1. 认识C++2. C++的现状和发展3.
    发表于 12-07 08:00 33次下载
    <b class='flag-5'>C++</b>入门教程之<b class='flag-5'>C++</b>程序设计的课件资料免费下载

    C++程序设计的基础知识初步了解C++的资料免费下载

    本文档的主要内容详细介绍的是C++程序设计的基础知识初步了解C++的资料免费下载包括了:1 认识C++,2 C++的现状和发展,3
    发表于 06-10 08:00 25次下载
    <b class='flag-5'>C++</b>程序设计的基础知识初步了解<b class='flag-5'>C++</b>的资料免费下载

    Linux C/C++ 学习路线

    一、秋招 Linux C/C++ offer 情况二、Linux C/C++ 方向的一些思考三、计算机基础知识的梳理四、C++ 方向的深入
    发表于 11-06 19:36 14次下载
    Linux <b class='flag-5'>C</b>/<b class='flag-5'>C++</b> <b class='flag-5'>学习</b>路线

    C++学习笔记顺序容器

    C++中的顺序容器是一种用于存储和管理元素序列的数据结构。它们提供了一组有序的元素,并支持在序列的任意位置插入和删除元素。C++标准库中提供了多种顺序容器,包括vector、deque、list、forward_list和array。
    的头像 发表于 05-11 17:05 599次阅读

    C++之父新作带你勾勒现代C++地图

    为了帮助大家解决这些痛点问题,让大家领略现代C++美,掌握其中的精髓,更好地使用C++C++之父Bjarne Stroustrup坐不住了,他亲自操刀写就了这本《
    的头像 发表于 10-30 16:35 858次阅读
    <b class='flag-5'>C++</b>之父新作带你勾勒现代<b class='flag-5'>C++</b>地图