C++ 第1章 基本数据与表达式

2024-09-07 04:48
文章标签 c++ 数据 基本 表达式

本文主要是介绍C++ 第1章 基本数据与表达式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

C++语言源于C语言。C语言诞生于20世纪70年代,最初设计的目的是编写操作系统。
C++语言以函数为程序运行的基本单位,函数的一般形式:

 类型     函数名 (参数表)
{语句序列;}基本头文件:
#include <iostream> 使用名字空间,std标准库
using namespace std;
cin(标准输入)
cout (标准输出)

结构化方法编程:

#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{double r, girth, area;const double PI = 3.1415;cin >> r;girth = 2 * PI * r;area = PI * r * r;cout << "radius = " << r << endl;cout << "girth = " << girth <<endl;cout << "area = " << area <<endl;return 0;
}

面向对象方法编程:

#include <iostream>
using namespace std;
class Circle
{double radius;
public :void SetRadius( double r ){radius = r;}double GetRadius(){return radius;}double GetGirth(){return 2 * 3.1415 * radius;}double GetArea(){return 3.1415 * radius * radius;}};int main(int argc, char *argv[])
{Circle A, B;A.SetRadius(12.6);cout << "A.Radius = " << A.GetRadius() << endl;cout << "A.Girth = " << A.GetGirth() << endl;cout << "A.Area = "  << A.GetArea() << endl;B.SetRadius(8.26);cout << "B.Radius = " << B.GetRadius() << endl;cout << "B.Girth = " << B.GetGirth() << endl;cout << "B.Area = " << B.GetArea() << endl;return 0;
}//程序运行结果:
A.Radius = 12.6
A.Girth = 79.1658
A.Area = 498.745
B.Radius = 8.26
B.Girth = 51.8976
B.Area = 214.337

程序的编译执行:

C++的.cpp文件是文本文件。必须翻译成二进制代码才能在机器上运行。
翻译方式有两种:
1.解释方式:由“解释程序”对源程序逐个语句一边翻译,一边执行。执行速度慢,便于观察调试程序。
2.编译方式:由“编译程序”把源程序全部翻译成二进制代码。编译后的程序称为“目标程序”,可以反复高速运行。

一个C++语言源程序主要经过以下3个步骤:

1.编辑
2.编译
3.运行

程序错误可分为如下4种:

1.编译错误
2.连接错误
3.运行错误
4.逻辑错误

程序目标:

1.正确性
2.易读性
3.健壮性
4.运行高效率

变量定义

类型   标识符表;
例:int a, b c;double d;

访问变量:

1.名访问
变量 = 表达式;
a = a+b;2.地址访问
int a;
&a // 变量a的地址(指针)
*(&a) //a的地址所指的对象3.指针变量与间址访问
指针类型变量定义形式为:
类型  * 标识符;
int a = 8, b = 9;
int *pa, *pb;
pa = &a;
pb = &b;a,b的地址可以表示为:
&a 或 pa;
&b 或 pb;a,b的值可以表示为:
a 或 *(&a) 或 *(pa)
b 或 *(&b) 或 *(pb)当指针变量不指向任何内存单元时可以赋NULL值;
指针变量的关联类型可以为空类型void。
空类型指针变量可以指向任意数据类型的对象,但需要强制类型转换。
void *vp;
int a = 99;
int *ip;
vp = &a;
cout << *(int*)vp<<endl;
cout << *(char*)vp<<endl;
ip = (int*)vp;
cout << (*ip)<<endl;4.引用
C++允许为对象定义别名:
类型  &引用名 = 对象名;
int a;
int *pa;
int &ra = a; //ra是a的别名,只能在定义时初始化
pa = &a;  // pa指向a,这里“&”是取址符

常量和约束访问

1.标识常量
当用关键字const约束基本类型存储单元为只读时:(不可修改常量的值)
const 类型  常量标识符  =  常量表达式;
const double PI = 3.1415;
const int MIN = 50;2.指向常量的指针
用const约束指针对所指对象的访问时,这个指针称为指向常量的指针:(限制用指针间址访问对象方为“只读”)
const 类型 *指针   或    类型  const *指针3.指针常量
指针常量的意义是指针变量的值只能在定义的时候初始化,定义后不能修改,即不能改变指针变量的指向,但不影响所指对象的变问特性;
指针常量的定义形式为:
类型  *const 指针
int var1=88,var2=99;
int *const const_P1 = &var1;
const_P1 = &var2 //错误,不能修改指针常量
*const_P1 = var2; //可以修改指针常量所指对象的值4.指向常量的指针常量
指针本身和所指对象的值在定义后都限制为只读,不能写。
const 类型  *const 指针 或 类型 const *const 指针
int var = 23, other_var = 256;
const int MAX = 299;
const int * const double_P1 = &var;
const int * const double_P2 = &MAX;5.常引用
冠以const定义的引用,将约束对象用别名方式访问时为只读。
const 类型 & 引用名 = 对象名;
int a = 89;
const int & ra = a; 

表达式

1.运算符
C++运算符主要有:算术运算符   + - * / % ++ --关系运算符   > < == >= <= !=逻辑运算符   && || !位运算符    << >> ~ | ^ &赋值运算符   = 及扩展的复合运算符条件运算符   ? :逗号运算符   ,指针运算符   *  &求字节运算符  sizeof强制类型转换符  类型符分量运算符    . ->下标运算会    []其他         ()  ::  new  delete

条件表达式

操作数1 ? 操作数2 : 操作数3

类型转换

强制类型转换的一般形式:
(类型)(表达式)
(类型)表达式
类型 (表达式)

数据输入和输出

cin >>变量1>>变量2 … >>变量n;
cout <<表达式1<<表达式2… <<表达式n;

输出格式控制符

需要包含头文件iomainp

控制符功能
endl输出一个新行符,并清空流
ends输出一个字符串结束符,并清空流
dec用十进制数的形式输入或输出数值
hec用十六进制数的形式输入或输出数值
oct用八进制数的形式输入或输出数值
setfill(char c)设置填充符c
setprecision(int n)设置浮点数输出精度(包括小数点)
setw(int n)设置输出宽度

这篇关于C++ 第1章 基本数据与表达式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/1144098

相关文章

Java Lambda表达式的使用详解

《JavaLambda表达式的使用详解》:本文主要介绍JavaLambda表达式的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、前言二、Lambda表达式概述1. 什么是Lambda表达式?三、Lambda表达式的语法规则1. 无参数的Lambda表

详解如何使用Python构建从数据到文档的自动化工作流

《详解如何使用Python构建从数据到文档的自动化工作流》这篇文章将通过真实工作场景拆解,为大家展示如何用Python构建自动化工作流,让工具代替人力完成这些数字苦力活,感兴趣的小伙伴可以跟随小编一起... 目录一、Excel处理:从数据搬运工到智能分析师二、PDF处理:文档工厂的智能生产线三、邮件自动化:

Java 枚举的基本使用方法及实际使用场景

《Java枚举的基本使用方法及实际使用场景》枚举是Java中一种特殊的类,用于定义一组固定的常量,枚举类型提供了更好的类型安全性和可读性,适用于需要定义一组有限且固定的值的场景,本文给大家介绍Jav... 目录一、什么是枚举?二、枚举的基本使用方法定义枚举三、实际使用场景代替常量状态机四、更多用法1.实现接

git stash命令基本用法详解

《gitstash命令基本用法详解》gitstash是Git中一个非常有用的命令,它可以临时保存当前工作区的修改,让你可以切换到其他分支或者处理其他任务,而不需要提交这些还未完成的修改,这篇文章主要... 目录一、基本用法1. 保存当前修改(包括暂存区和工作区的内容)2. 查看保存了哪些 stash3. 恢

Python数据分析与可视化的全面指南(从数据清洗到图表呈现)

《Python数据分析与可视化的全面指南(从数据清洗到图表呈现)》Python是数据分析与可视化领域中最受欢迎的编程语言之一,凭借其丰富的库和工具,Python能够帮助我们快速处理、分析数据并生成高质... 目录一、数据采集与初步探索二、数据清洗的七种武器1. 缺失值处理策略2. 异常值检测与修正3. 数据

pandas实现数据concat拼接的示例代码

《pandas实现数据concat拼接的示例代码》pandas.concat用于合并DataFrame或Series,本文主要介绍了pandas实现数据concat拼接的示例代码,具有一定的参考价值,... 目录语法示例:使用pandas.concat合并数据默认的concat:参数axis=0,join=

C/C++ chrono简单使用场景示例详解

《C/C++chrono简单使用场景示例详解》:本文主要介绍C/C++chrono简单使用场景示例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友... 目录chrono使用场景举例1 输出格式化字符串chrono使用场景China编程举例1 输出格式化字符串示

C#代码实现解析WTGPS和BD数据

《C#代码实现解析WTGPS和BD数据》在现代的导航与定位应用中,准确解析GPS和北斗(BD)等卫星定位数据至关重要,本文将使用C#语言实现解析WTGPS和BD数据,需要的可以了解下... 目录一、代码结构概览1. 核心解析方法2. 位置信息解析3. 经纬度转换方法4. 日期和时间戳解析5. 辅助方法二、L

C++/类与对象/默认成员函数@构造函数的用法

《C++/类与对象/默认成员函数@构造函数的用法》:本文主要介绍C++/类与对象/默认成员函数@构造函数的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录名词概念默认成员函数构造函数概念函数特征显示构造函数隐式构造函数总结名词概念默认构造函数:不用传参就可以

C++类和对象之默认成员函数的使用解读

《C++类和对象之默认成员函数的使用解读》:本文主要介绍C++类和对象之默认成员函数的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、默认成员函数有哪些二、各默认成员函数详解默认构造函数析构函数拷贝构造函数拷贝赋值运算符三、默认成员函数的注意事项总结一