当前位置: 首页 > news >正文

加强网站建设和维护工作网站制作app免费软件

加强网站建设和维护工作,网站制作app免费软件,苏州建设监督网站首页,政务网站网上调查怎么做文章目录C014-C字符串字符串目标char[]和stringchar[]char*string字符常量与字符串常量字符串的输入题目描述 字符串输出题目描述在线练习:总结C014-C字符串 在线练习: http://noi.openjudge.cn/ https://www.luogu.com.cn/ 字符串 目标 1、了解字符串…

文章目录

  • C++014-C++字符串
    • 字符串
      • 目标
      • char[]和string
        • char[]
        • char*
        • string
      • 字符常量与字符串常量
      • 字符串的输入
      • 题目描述 字符串输出
      • 题目描述
    • 在线练习:
    • 总结

C++014-C++字符串

在这里插入图片描述

在线练习:
http://noi.openjudge.cn/
https://www.luogu.com.cn/

字符串

目标

1、了解字符串的基本概念
2、掌握字符串输入输出方法
3、掌握字符串复制、拼接、比较大小、求长度等方法

参考:https://www.cnblogs.com/zhaoyunt/p/15360127.html

char[]和string

先阐述C++中char[],string的区别和联系.

char[]

#include <iostream>
using namespace std;
int main()
{char a[10] = "123";a[4]='5';a[3]='4';cout << a;return 0;
}
// 输出:12345,此程序在a[5]的位置自动写入了'\0',终止符

在这里插入图片描述

注意:这里的char [] 数组,
如果是全局变量,静态变量,一般编译器(具体要依赖于具体所使用的编译器和系统)会采用默认原则将内部的所有位置设置为0;
如果是局部变量,由于局部变量的内存分配是在栈上,如果未对char数组进行初始化的话,数组内的数据取决于此处原来的数据。同理,动态变量在堆上,同样数据为任意值。

char*

参考:https://blog.csdn.net/weixin_42322256/article/details/121450646
1、字符串char*

char *str1="abcde";  //这是一个字符串常量,存储在静态存储区,是只读的。
const char *str1 = "abcde";
char const *str1 = "abcde"; //注意,这两种写法等价
//其中,str1是一个变量,代表的意思就是字符串的第一个字符的值

案例

#include <iostream>
using namespace std;
int main()
{char arr[] = "abcdef";char* pc2 = arr;   //数组首元素地址赋值给指针pc2,指针大小只有4字节不可能放下整个数组cout << *pc2 << endl;   //输出是a,说明pc2存放的只是数组首元素地址cout << pc2 << endl;    //abcdef ,表示从pc2指向的地址位置开始打印cout << arr << endl;    //abcdefreturn 0;
}

输出为:
在这里插入图片描述

此处参照此博客:

关于字符串常量&字符数组&字符常量:https://blog.csdn.net/wuwuku123/article/details/103575620

const char * 、char const * 、 char * const 三者的区别:https://blog.csdn.net/qq_40244176/article/details/80765975

string

char是一个字符类型 C++的内置类型,char *是字符指针;
而string是一个字符容器,是一个扩展的模版类。
(一)、先解释char*字符串和string对象的区别。

1、定义

string:string是C++STL当中的一个容器,对其进行了封装,所以操作起来非常方便。
char*:char*是一个指针,可以指向一个字符串数组,至于这个数组可以在栈上分配,也可以在堆上分配,堆得话就要你手动释放了。

2、区别:

string的内存管理是由系统处理,除非系统内存池用完,不然不会出现这种内存问题。
char*的内存管理由用户自己处理,很容易出现内存不足的问题。
当我们要存一个串,但是不知道其他需要多少内存时,用string来处理就最好不过了。
当你知道了存储的内存的时候,可以用char*,但是不如用string的好,用指针总会有隐患。

用string还可以使用各种成员函数来处理串的每一个字符,方便处理。
用char*处理串,就不如string的方便了,没有相应的函数来直接调用,而是要自己编写函数来完成串的处理,而且处理过程中用指针还很容易出现内存问题。

3、注意:

当我们定义了一个string,就不能用scanf(“%s”,s)和printf(“%s”,s)输入输出。主要是因为%s要求后面是对象的首地址。

#include <iostream>
#include <string>
using namespace std;int main(){string s1;//变量 s1 只是定义但没有初始化,编译器会将默认值赋给 s1,默认值是"",也即空字符串。string s2 = "c plus plus";//变量 s2 在定义的同时被初始化为"c plus plus"。与C风格的字符串不同,string 的结尾没有结束标志'\0'。string s3 = s2;//变量 s3 在定义的时候直接用 s2 进行初始化,因此 s3 的内容也是"c plus plus"。string s4 (5, 's');//变量 s4 被初始化为由 5 个's'字符组成的字符串,也就是"sssss"。return 0;
}

从上面的代码可以看出,string 变量可以直接通过赋值操作符=进行赋值。string 变量也可以用C风格的字符串进行赋值,例如,s2 是用一个字符串常量进行初始化的,而 s3 则是通过 s2 变量进行初始化的。

字符常量与字符串常量

在这里插入图片描述

字符串的输入

1.cin>>字符串名;

string s1;//定义一个字符串变量s1
cin>>s1;//直接输入s1字符串

【注意】cin语句不会输入空格、换行符等分隔符(输入后,空格、换行符仍然留在输入缓冲区);

  1. getline(cin,字符串名);
string s1;
getline(cin,s1);//获取一行;

题目描述 字符串输出

【描述】
输入两个单词,用空格隔开,然后分两行分别输出这两个单词
【输入】
1行,两个单词,用空格分隔;
【输出】
2行,两个单词,每个单词一行;

#include <iostream>
#include <string>
using namespace std;int main(){string s1,s2;cin>>s1>>s2;cout<<s1<<endl<<s2;return 0;
}

在这里插入图片描述

题目描述

【描述】
输入一个数字,这个数字可能是1也可能是2,然后分两行输入两个英文语句。如果是1就输出第一个句子,如果是2就输出第二个句子
【输入】
3行;第1行是一个数字;接下来的两行是2句英文句子。注意,句子中会存在空格,以换行符结束;
【输出】
1行,1个句子;
【样例输入】
1
l am a student.
My name is Hanmeimei.
【样例输出】
l am a student.

代码

#include <iostream>
#include <string>
using namespace std;int main(){int n;string s1,s2;cin>>n;getline(cin,s1);getline(cin,s1);getline(cin,s2);if(n==1) cout<<s1;else cout<<s2;return 0;
}

在这里插入图片描述

在线练习:

http://noi.openjudge.cn/

总结

本系列为C++学习系列,会介绍C++基础语法,基础算法与数据结构的相关内容。本文为C++字符串案例,包括相关案例练习。

http://www.ds6.com.cn/news/72179.html

相关文章:

  • 深圳专业做网站排名公司哪家好网址注册
  • 乐拾seo官网优化哪家专业
  • 做网站需求自助建站网
  • 暴雪国际服网站内部seo
  • 网站正在建设中色综合免费seo网站诊断
  • 扶贫办网站建设互联网营销师报名入口官网
  • 哪里有做网站开发哈尔滨seo网络推广
  • 网页制作与网站建设实战教程视频b2b自动发布信息软件
  • 百度推广对网站的好处免费发布信息的网站平台
  • 网站建设备案需要材料建设企业网站多少钱
  • 网站推广经理招聘百度知道电脑版网页入口
  • 怎么做淘宝客的跳转网站百度云盘资源共享链接群组链接
  • 旅游网站域名应该如何设计武汉seo网站优化排名
  • 杭州网站设计首选柚米网站生成app
  • 人力招聘网站建设目的关键词首页排名代做
  • 我做的网站怎么打开很慢广州新一期lpr
  • 家纺网站模板百度网址大全旧版安装
  • 做前端网站要注意哪些吉林网络seo
  • 贵州网站设计怎么在百度上推广自己的产品
  • wordpress 多占点seo模拟点击
  • 设计网站推荐国外怎么在百度打广告
  • 网站导航栏隐藏部分怎么做超级外链工具源码
  • 从零学建设网站今日头条站长平台
  • 网站制作公司哪里好电商培训课程
  • 大型b2b网站开发seo 优化一般包括哪些内容
  • 营销网站策划云搜索app下载
  • 您提供的产品已经提交过网站备案百度搜索数据统计
  • 做3d ppt模板下载网站有哪些南宁seo怎么做优化团队
  • 响应式布局模板网站免费下载百度应用商店官网
  • 扁平化设计 科技感网站素材十种营销方法