c++初步

作业:

  1. 定义自己的命名空间,其中有string类型的变量,再定义两个函数,一个函数完成字符串的输入,一个函数完成求字符串长度,再定义一个全局函数完成对该字符串的反转
#include <iostream>
#include <cstring>
using namespace std;
namespace A{void fun1(string s1);
}
void A::fun1(string s1){cout<<s1<<endl;
}
void fun2(char arr[],int len){for(int i=0;i<len/2;i++){int temp;temp=arr[i];arr[i]=arr[len-i-1];arr[len-i-1]=temp;}
for(int i=0;i<len;i++){cout<<arr[i];
}
}
using namespace A;
int main()
{string s1="";cout<<"请输入字符串"<<endl;cin>>s1;fun1(s1);char arr[32]="";strcpy(arr,s1.data());int len=s1.size();fun2(arr,len);return 0;
}

一、第一个C++程序

1.cout输出流对象

cout控制格式输出,只能输出十六进制、八进制和十进制

//输出a的16进制cout << "a的十六进制:" << hex << a << endl;
cout << setbase(16) << a << endl;   //输出十六进制cout << "右对齐四个宽度输出a: " << dec << setw(4) << a << endl;cout << "左对齐四个宽度输出a: " << setw(4) << left << a << endl;cout << "b指定小数点后4位输出" << setprecision(4) << b << endl;  //4位包含小数点

2.cin输入流对象

//使用cin输入三个变量cin >> a;cin >> c;cin >> b;

二、命名空间

命名空间只能定义全局处/其他命名空间中

1.在命名空间中声明函数

#include <iostream>
using namespace std;namespace A
{int a=100;void fun();  //在命名空间A中存放了函数声明
}//命名空间中声明,命名空间外定义
//需要加上命名空间名和域限定符限定是哪一个命名空间中的函数
void A::fun()
{cout << "test" << endl;
}int main()
{std::cout << A::a << endl;A::fun();  //testreturn 0;
}

2.命名空间冲突的解决

如果导入了命名空间中和全局变量冲突的标识符时,后续访问该标识符会报错

访问命名空间中的标识符: 命名空间名::标识符名

访问全局变量: ::标识符名; (全局变量,默认在程序的匿名空间中)

三、string字符串

c++中将字符串封装乘string类,后续可以用string定义字符串变量

1.string类

#include <iostream>
using namespace std;
int main()
{string s1 = "hello";  //定义了一个字符串s1并赋值为hellocout << "s1=" << s1 << endl;string s2(3,'a');   //定义了一个字符串s2并使用3个a初始化cout << "s2=" << s2 << endl;string s3(s1);   //定义了一个字符串s3使用s1初始化cout << "s3=" << s3 << endl;string s4("hi");   //定义了一个字符串s4使用hi初始化cout << "s4=" << s4 << endl;cout << "s1+s2 = " << s1+s2 << endl;  //将s1和s2拼接到一起s4 = s1+s2;cout << "s4 = " << s4;return 0;
}

2.  c字符串与c++字符串的转化

#include <iostream>
#include <cstring>
using namespace std;//需要使用c_str函数和data函数玩长城C++风格向C风格的转换
int main()
{string s1 = "hello";  //定义了一个字符串s1并赋值为hellochar str[100];strcpy(str,s1.c_str());cout << str << endl;string s2 = " world";strcat(str,s2.data());cout << str << endl;string s3 = str;  //C风格字符串可以直接给string类型赋值cout << s3 << endl;cout << (s3>s2) << endl;//string类型可以直接进行比较无需调用strcmp函数,运算符重载return 0;
}

3.string类中的函数

1.at()

cout<<s1.at(100)<<endl;

2.size()/length()

s1.size()

s1.length()

3.empty()/clear()

s1.empty:对字符串判空

s1.clear:清空字符串

4.字符串的判断

可以直接使用!=,==,>,>=····运算符直接判断字符串间的关系

四、bool类型

  1. bool类型的默认值,0/false
  2. bool的大小,1Byte(内存分配的最小单位是Byte)
  3. bool类型的赋值,可以直接使用true和false赋值,可以用数值直接赋值
  4. bool输出,默认以数字形式输出,如果想用单词形式输出,需要加上boolalpha,恢复数字形式,加上noboolalpha

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

辽渤湾海现已加入2024第七届燕窝天然滋补品博览会

参展企业介绍 大连辽渤湾海产品有限公司&#xff0c;是一家主营海参、鲍鱼、海胆等大连海产品的加工和销售的综合型水产企业&#xff0c;拥有国内精良的整条加工流水线&#xff0c;拥有上千平米的现代化加工办公场地的现代化企业。现已发展成为大连海参产品的主导型深加工基地。…

SpringBoot 三种拦截http请求方式Filter,Interceptor和AOP

1 Filter Filter常被叫做过滤器&#xff0c;filter的调用周期大致如下 也就是说filter在servlet之前&#xff0c;没有办法在filter中获取springboot中的java bean对象。 Filter生命周期方法 init:在服务器启动后&#xff0c;会创建Filter对象&#xff0c;然后调用init方法。…

无货源违规又现,现在还能做抖音小店吗?无货源商家该怎么调整?

大家好&#xff0c;我是电商花花。 最近好像又有很多人的店铺被查无货源违规&#xff0c;店铺还被扣12分&#xff0c;也申诉不了。 如果想要长期的做下去&#xff0c;就不要秀那些花里胡哨的操作&#xff0c;也不要为了短暂的自然流量而进行违规操作&#xff0c;为什么你的店…

【网络爬虫】(1) 网络请求,urllib库介绍

各位同学好&#xff0c;今天开始和各位分享一下python网络爬虫技巧&#xff0c;从基本的函数开始&#xff0c;到项目实战。那我们开始吧。 1. 基本概念 这里简单介绍一下后续学习中需要掌握的概念。 &#xff08;1&#xff09;http 和 https 协议。http是超文本传输&#xf…

leetcode mt simple

Leetcode-MT-Simple 文章实际写于2021年&#xff0c;那个炎热的夏天。 Leet Code 美团题库简单类总结&#xff0c;题目按照解法可大致分为数学法、计数法、位运算、双指针法、字符串、哈希表、栈、递归/迭代、排序法、匹配法、记忆化法、二分法、分治法、摩尔投票法、前缀和、…

基于nodejs+vue家装一体化平台python-flask-django-php

提高现下家装一体化平台的准确度&#xff0c;同时降低经济波动带来的不良影响&#xff0c;希望本文能对广大学者的研究提供参考。 前端技术&#xff1a;nodejsvueelementui, Express 框架于Node运行环境的Web框架, 语言 node.js 框架&#xff1a;Express 前端:Vue.js 数据库&am…

喜获千万元价值补贴,探索 AI 领域新应用:Zilliz 全力支持 AI 初创企业

价值 1000 万元的大额补贴&#xff01;得到领先全行业的向量数据库团队支持&#xff01;尽享独家生态资源&#xff01;「Zilliz AI 初创计划」正式开启&#xff01; 「Zilliz AI 初创计划」是 Zilliz 面向 AI 初创企业推出的一项扶持计划&#xff0c;预计提供总计 1000 万元的 …

书生·浦语大模型实战营——两周带你玩转微调部署评测全链路

引言 人工智能技术的发展日新月异&#xff0c;其中大模型的发展尤其迅速&#xff0c;已然是 AI 时代最炙手可热的当红炸子鸡。 然而&#xff0c;大模型赛道对于小白开发者来说还是有不小的门槛。面对内容质量参差不齐的课程和实际操作中遇到的问题&#xff0c;许多开发者往往…

2核4g服务器能支持多少人访问?阿里云2核4g服务器在线人数

阿里云2核4G服务器多少钱一年&#xff1f;2核4G配置1个月多少钱&#xff1f;2核4G服务器30元3个月、轻量应用服务器2核4G4M带宽165元一年、企业用户2核4G5M带宽199元一年。可以在阿里云CLUB中心查看 aliyun.club 当前最新2核4G服务器精准报价、优惠券和活动信息。 阿里云官方2…

【PCL】mac下安装PCL的安装与配置

【PCL】mac下安装PCL的安装与配置 PCL PCL官方文档 PCL&#xff08;Point Cloud Library&#xff09;是在吸收了前人点云相关研究基础上建立起来的大型跨平台开源C编程库&#xff0c;它实现了大量点云相关的通用算法和高效数据结构&#xff0c;涉及到点云获取、滤波、分割、配…

知识图谱推理算法综述(上):基于距离和图传播的模型

背景 知识图谱系统的建设需要工程和算法的紧密配合&#xff0c;在工程层面&#xff0c;去年蚂蚁集团联合 OpenKG 开放知识图谱社区&#xff0c;共同发布了工业级知识图谱语义标准 OpenSPG 并开源&#xff1b;算法层面&#xff0c;蚂蚁从知识融合&#xff0c;知识推理&#xff…

底部填充胶在汽车电子领域的应用有哪些?

底部填充胶在汽车电子领域的应用有哪些&#xff1f; 在汽车电子领域&#xff0c;底部填充胶被广泛应用于IC封装等&#xff0c;以实现小型化、高聚集化方向发展。 底部填充胶在汽车电子领域有多种应用&#xff0c;包括以下方面&#xff1a; 传感器和执行器的封装&#xff1a;汽车…

AJAX(一):初识AJAX、http协议、配置环境、发送AJAX请求、请求时的问题

一、什么是AJAX 1.AJAX 就是异步的JS和XML。通过AJAX 可以在浏览器中向服务器发送异步请求&#xff0c;最大的优势&#xff1a;无刷新获取数据。AJAX 不是新的编程语言&#xff0c;而是一种将现有的标准组合在一起使用的新方式。 2.XML 可扩展标记语言。XML被设计用来传输和…

工业级POE交换机的SSH配置步骤

工业级POE交换机的SSH&#xff08;Secure Shell&#xff09;配置可以通过以下步骤进行&#xff1a; 1. 连接到POE交换机&#xff1a;使用一个支持SSH协议的终端工具&#xff08;如PuTTY&#xff09;连接到POE交换机的管理接口。 2. 登录到POE交换机&#xff1a;输入正确的用户…

详解Java 中的 Lambda 表达式

引言&#xff1a; Lambda 表达式是 Java 8 中引入的一个重要特性&#xff0c;它可以使代码更加简洁、易读&#xff0c;并且更加具有函数式编程风格。Lambda 表达式本质上是一个匿名函数&#xff0c;它可以作为方法参数传递&#xff0c;也可以直接赋值给一个变量。 一、Lambda 表…

【数据结构与算法】直接插入排序和希尔排序

引言 进入了初阶数据结构的一个新的主题——排序。所谓排序&#xff0c;就是一串记录&#xff0c;按照其中的某几个或某些关键字的大小&#xff08;一定的规则&#xff09;&#xff0c;递增或递减排列起来的操作。 排序的稳定性&#xff1a;在一定的规则下&#xff0c;两个值…

电子方案:打地鼠

打地鼠玩具是一种经典的儿童游戏&#xff0c;它结合了电子技术来增加娱乐性和互动性。 电子技术的集成使得打地鼠玩具不仅能够提供基本的娱乐功能&#xff0c;还能够提供更多的互动性和游戏性。随着技术的发展&#xff0c;打地鼠玩具可能会包含更多的高级功能&#xff0c;如无…

如何使用 JavaScript 导入和导出 Excel

前言 在现代的Web应用开发中&#xff0c;与Excel文件的导入和导出成为了一项常见而重要的任务。无论是数据交换、报告生成还是数据分析&#xff0c;与Excel文件的交互都扮演着至关重要的角色。本文小编将为大家介绍如何在熟悉的电子表格 UI 中轻松导入 Excel 文件&#xff0c;…

Airflow【部署 01】调度和监控工作流工具Airflow官网Quick Start实操(一篇学会部署Airflow)

Airflow官网Quick Start实操 1.环境变量设置2.使用约束文件进行安装3.启动单机版3.1 快速启动3.2 分步骤启动3.3 启动后3.4 服务启动停止脚本 4.访问4.1 登录4.2 测试 来自官网的介绍&#xff1a; https://airflow.apache.org/ Airflow™是一个由社区创建的平台&#xff0c;以…

FFmpeg+mediamtx 实现将本地摄像头推送成RTSP流

文章目录 概要推流过程实现过程安装FFmpeg安装Mediamtx 启动推流 概要 FFmpegmediamtx实现将本地摄像头推送成RTSP流 FFmpeg 版本号为&#xff1a;N-114298-g97d2990ea6-20240321 mediamtx 版本号为&#xff1a;v1.6.0 推流过程 摄像头数据&#xff0c;经过ffmpeg的推流代码…