c++入门基础知识——常量和变量

简介: c++入门基础知识——常量和变量

前言


前面我们了解了c++的数据类型,下面来学习c++中变量和常量。


提示:以下是本篇文章正文内容,下面案例可供参考


一、什么是常量和变量?


常量是程序运行中其值始终保持不变的量,根据常量的类型,可以分为整形常量,实型常量,字符常量和字符串常量,逻辑常量。

注意:常量可以带后缀,如123u,1.23f和123ll,分别表示无符号整形常量,单精度常量,长长整形。


二、常量


1.常量的种类


8c9f3634b4b281a561de872569cefde5_watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5b-D6ZqP6ICM5Yqo,size_20,color_FFFFFF,t_70,g_se,x_16.png


代码如下(示例):


2.代码演示——常量的输出和定义。


c++:


5d048af6eeadc6749fe79f6c50897dfd_watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5b-D6ZqP6ICM5Yqo,size_20,color_FFFFFF,t_70,g_se,x_16.png


c语言:


0c9a6a5b6742ac2f5e1fd70090e40beb_watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5b-D6ZqP6ICM5Yqo,size_20,color_FFFFFF,t_70,g_se,x_16.png


代码如下(示例):


c++语言:
#include<iostream>
#include<iomanip>//控制符头文件;
using namespace std;
int main(void)
{
  const double pi = 3.141592653589793;//关键字const定义常量,和c语言中的宏作用结果相同。
  cout << pi << endl;
  cout << fixed << setprecision(2) << pi << endl;
  cout << fixed << setprecision (5)<< pi<<endl;
}
c语言:
#include<stdio.h>
#define pi 3.141592653589793
int main(void)
{
  printf("%f\n", pi);
  printf("%.2f\n", pi);
  printf("%.3f\n", pi);
}


上面两个例子可以看出,cout输出时默认保留6位有效位,printf输出时默认保留6位小数位;在c++语言中,如果要对数据进行取舍处理,则要用到cout<<fixed<<setprecision(int n)<<m<<endl;格式,其中m是变量,n是要保留的小鼠位数;


3.oj题中保留小数的题目(简单)。


6298999e92bc55a09fad26f467cc0631_watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5b-D6ZqP6ICM5Yqo,size_20,color_FFFFFF,t_70,g_se,x_16.png


代码演示:


#include<iostream>
#include<iomanip>
using namespace std;
int main(void)
{
  double a, b, c;
  double s;
  cin >> a >> b >> c;
  s = (a + b + c) / 3;
  cout << fixed << setprecision(1) << s << endl;
}


三、变量


1.变量的定义


变量是程序运行中其值可以改变的量,变量需要指定数据类型,变量由变量名,变量值组成。


2.变量的使用


5584d7d8b97ba0abc69836bc27054dae_watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5b-D6ZqP6ICM5Yqo,size_20,color_FFFFFF,t_70,g_se,x_16.png


变量的值可以随意改变,例如,输入两个数,要求输出这两个数的值,然后将他们的值对调输出:


#include<iostream>
#include<iomanip>
using namespace std;
int main(void)
{
  int a, b;
  cin >> a >> b;
  swap(a, b);//swap函数是c++中的库函数,用来交换两个变量的值;后面学到会讲;
  cout << a << b;
}


在c++语言中定义变量的时候,不是简简单单定义a,b,c等字符,要做到见名知意,这里为了方便教学,就用字符代替。


总结


提示:这里对文章进行总结:


以上就是今天的内容,学习了c++中的数据类型和变量,常量。后面将会学习c++中的运算符,比较适合刚入门的小白。

相关文章
|
1天前
|
C语言 C++ 开发者
C++基础知识(一:命名空间的各种使用方法)
C++在C的基础上引入了更多的元素,例如类,类的私密性要比C中的结构体更加优秀,引用,重载,命名空间,以及STL库,模板编程和更多的函数,在面向对象的编程上更加高效。C语言的优势则是更加底层,编译速度会更快,在编写内核时大多数都是C语言去写。 在C++中,命名空间(Namespace)是一种组织代码的方式,主要用于解决全局变量、函数或类的命名冲突问题。命名空间提供了一种封装机制,允许开发者将相关的类、函数、变量等放在一个逻辑上封闭的区域中,这样相同的名字在不同的命名空间中可以共存,而不会相互干扰。
|
9天前
|
安全 C++
C++一分钟之-互斥锁与条件变量
【6月更文挑战第26天】在C++并发编程中,`std::mutex`提供互斥访问,防止数据竞争,而`std::condition_variable`用于线程间的同步协调。通过`lock_guard`和`unique_lock`防止忘记解锁,避免死锁。条件变量需配合锁使用,确保在正确条件下唤醒线程,注意虚假唤醒和无条件通知。生产者-消费者模型展示了它们的应用。正确使用这些工具能解决同步问题,提升并发性能和可靠性。
18 4
|
1天前
|
C++
【C++】string类的使用④(常量成员Member constants)
C++ `std::string` 的 `find_first_of`, `find_last_of`, `find_first_not_of`, `find_last_not_of` 函数分别用于从不同方向查找目标字符或子串。它们都返回匹配位置,未找到则返回 `npos`。`substr` 用于提取子字符串,`compare` 则提供更灵活的字符串比较。`npos` 是一个表示最大值的常量,用于标记未找到匹配的情况。示例代码展示了这些函数的实际应用,如替换元音、分割路径、查找非字母字符等。
|
1天前
|
C++
C++基础知识(二:引用和new delete)
引用是C++中的一种复合类型,它是某个已存在变量的别名,也就是说引用不是独立的实体,它只是为已存在的变量取了一个新名字。一旦引用被初始化为某个变量,就不能改变引用到另一个变量。引用的主要用途包括函数参数传递、操作符重载等,它可以避免复制大对象的开销,并且使得代码更加直观易读。
|
1天前
|
算法 编译器 C++
C++基础知识(三:哑元和内联函数和函数重载)
在C++编程中,"哑元"这个术语虽然不常用,但可以理解为在函数定义或调用中使用的没有实际功能、仅作为占位符的参数。这种做法多见于模板编程或者为了匹配函数签名等场景。例如,在实现某些通用算法时,可能需要一个特定数量的参数来满足编译器要求,即使在特定情况下某些参数并不参与计算,这些参数就可以被视为哑元。
|
1天前
|
C++
C++基础知识(四:类的学习)
类指的就是对同一类对象,把所有的属性都封装起来,你也可以把类看成一个高级版的结构体。
|
1天前
|
自然语言处理 程序员 C++
C++基础知识(五:运算符重载)
运算符重载是C++中的一项强大特性,它允许程序员为自定义类型(如类或结构体)重新定义标准运算符的行为,使得这些运算符能够适用于自定义类型的操作。这样做可以增强代码的可读性和表达力,使得代码更接近自然语言,同时保持了面向对象编程的封装性。
|
1天前
|
存储 编译器 C++
C++基础知识(六:继承)
多态是面向对象编程的四大基本原则之一,它让程序能够以统一的接口处理不同的对象类型,从而实现了接口与实现分离,提高了代码的灵活性和复用性。多态主要体现在两个层面:静态多态(编译时多态,如函数重载)和动态多态(运行时多态,主要通过虚函数实现)。
|
1天前
|
存储 编译器 C++
C++基础知识(七:多态)
多态是面向对象编程的四大基本原则之一,它让程序能够以统一的接口处理不同的对象类型,从而实现了接口与实现分离,提高了代码的灵活性和复用性。多态主要体现在两个层面:静态多态(编译时多态,如函数重载)和动态多态(运行时多态,主要通过虚函数实现)。
|
1天前
|
存储 算法 程序员
C++基础知识(八:STL标准库(Vectors和list))
C++ STL (Standard Template Library标准模板库) 是通用类模板和算法的集合,它提供给程序员一些标准的数据结构的实现如 queues(队列), lists(链表), 和 stacks(栈)等. STL容器的提供是为了让开发者可以更高效率的去开发,同时我们应该也需要知道他们的底层实现,这样在出现错误的时候我们才知道一些原因,才可以更好的去解决问题。