C/C++入门001-概述环境搭建与案例

简介: C/C++入门001-概述环境搭建与案例

1.C语言概述

参考:https://blog.csdn.net/weixin_44617968/article/details/117656810


1.1 计算机与程序

1.1.1 什么是计算机

计算机是一种电器, 所以计算机只能识别两种状态, 一种是通电一种是断电。 最初ENIAC的程序是由很多开关和连接电线来完成的。但是这样导致改动一次程序要花很长时间(需要人工重新设置很多开关的状态和连接线)


b6b8b812d4014865822a20fb091633f8.png

1.1.2 什么是计算机程序 ?

计算机程序是用计算机语言编写的命令集合(语句),用来告诉计算机"做某件事或解决某个问题"。


31f6d4ec072f49a7ae39c407496f4385.png


一个这种电器元器件为一个程序 ,当2个输入中至少有一个为高电平1 的时候 输出为1。可以发现针对这段程序 如果输入为0 0 输出为0 ,其余输出都为1。

看另外的程序

28a48a22d9db410989b3a97649051ee1.png


1.2 进制转化

二进制 八进制 十进制 十六进制 是可以互转

0014a56e518a454f8ba0620f095d530e.png

计算机中对应的ascii


3dbd91f5b20c4194a60044c3991d0ade.png


1.3 计算机语言

机器语言: 10111000 00000001 00000000 00000101 00000001 00000000

汇编:MOV AX, 1 ADD AX, 1

高级:1 + 1

7dc58d03e9be4d93a50ede29ab622040.png


1.4 C语言发展

fada3116e67043f0b16ba771c338c0bc.png


最早的高级语言:FORTRAN–>ALGOL–>CPL–>BCPL–>C–>C++等


“初,世间无语言,仅电路与连线。及大牛出,天地开,始有 FORTRAN、 LISP、ALGOL 随之, 乃有万种语”


语言排名

https://www.tiobe.com/


1.5 安装开发工具与编译器

1.5.1 安装 codeblocks

参考:

https://blog.csdn.net/m0_38139250/article/details/127128422


安装后会自带MinGW


1.5.2 设置MinGW的环境变量

在(系统属性-->高级-->环境变量-->系统变量 中)(以下目录都根据自己的电脑MinGW所在位置不同而改变)


a.在PATH的值中加入“C:\Program Files\CodeBlocks\MinGW\bin”。这是寻找gcc编译器的路径。如果PATH中还有其他内容,需要用英文状态下分号进行分割


b.新建LIBRARY_PATH变量,在其值中加入“C:\Program Files\MinGWStudio\MinGW\lib”。这是标准库存放的路径。


c.新建C_INCLUDE_PATH变量,在其值中加入“C:\Program Files\MinGWStudio\MinGW\include”。这是Include查找头文件的路径。


验证gcc是否正常运行


在cmd控制台窗口下面,输入gcc -v。若已经成功安装好,会显示gcc的版本信息。


1.6 C语言的HelloWorld

1.6.1 入门

创建一个记事本文件

a.cpp

内容入下:

#include <stdio.h>
#include <windows.h>
int main(){
    printf("hello world");
  Sleep(1000);
}

保存记事本

打开cmd

执行

gcc a.cpp -o test

双击text.exe即可


1.6.2 demo案例

#include <stdio.h>
#include <windows.h>
int main()
{ int i = 5;
  printf("%d,%d\n",i++,i);
  Sleep(10000);
}
相关文章
|
5月前
|
存储 安全 编译器
c++入门
c++作为面向对象的语言与c的简单区别:c语言作为面向过程的语言还是跟c++有很大的区别的,比如说一个简单的五子棋的实现对于c语言面向过程的设计思路是首先分析解决这个问题的步骤:(1)开始游戏(2)黑子先走(3)绘制画面(4)判断输赢(5)轮到白子(6)绘制画面(7)判断输赢(8)返回步骤(2) (9)输出最后结果。但对于c++就不一样了,在下五子棋的例子中,用面向对象的方法来解决的话,首先将整个五子棋游戏分为三个对象:(1)黑白双方,这两方的行为是一样的。(2)棋盘系统,负责绘制画面。
84 0
|
9月前
|
存储 缓存 C++
C++ 容器全面剖析:掌握 STL 的奥秘,从入门到高效编程
C++ 标准模板库(STL)提供了一组功能强大的容器类,用于存储和操作数据集合。不同的容器具有独特的特性和应用场景,因此选择合适的容器对于程序的性能和代码的可读性至关重要。对于刚接触 C++ 的开发者来说,了解这些容器的基础知识以及它们的特点是迈向高效编程的重要一步。本文将详细介绍 C++ 常用的容器,包括序列容器(`std::vector`、`std::array`、`std::list`、`std::deque`)、关联容器(`std::set`、`std::map`)和无序容器(`std::unordered_set`、`std::unordered_map`),全面解析它们的特点、用法
C++ 容器全面剖析:掌握 STL 的奥秘,从入门到高效编程
|
8月前
|
存储 分布式计算 编译器
C++入门基础2
本内容主要讲解C++中的引用、inline函数和nullptr。引用是变量的别名,与原变量共享内存,定义时需初始化且不可更改指向对象,适用于传参和返回值以提高效率;const引用可增强代码灵活性。Inline函数通过展开提高效率,但是否展开由编译器决定,不建议分离声明与定义。Nullptr用于指针赋空,取代C语言中的NULL。最后鼓励持续学习,精进技能,提升竞争力。
|
Linux 编译器 测试技术
【C++】CentOS环境搭建-快速升级G++版本
通过上述任一方法,您都可以在CentOS环境中高效地升级G++至所需的最新版本,进而利用C++的新特性,提升开发效率和代码质量。
660 64
|
Linux 编译器 测试技术
【C++】CentOS环境搭建-快速升级G++版本
通过上述任一方法,您都可以在CentOS环境中高效地升级G++至所需的最新版本,进而利用C++的新特性,提升开发效率和代码质量。
768 63
|
编译器 C++
C++入门12——详解多态1
C++入门12——详解多态1
146 2
C++入门12——详解多态1
|
C++
C++入门13——详解多态2
C++入门13——详解多态2
209 1
|
存储 C++ 容器
C++入门9——list的使用
C++入门9——list的使用
147 1
|
C语言 C++ 容器
C++入门7——string类的使用-1
C++入门7——string类的使用-1
103 0