前言
C++14(GCC 9)
我怎么感觉名字有点不对(是我的错觉吗)
正文
补充
上一篇有一点补充
如果是++a
是先执行a+1再执行其他的,如果是a++
是先执行其他再执行+1
字符串
字符串主要用于编程,概念说明、函数解释、用法详述见正文,这里补充一点:字符串在存储上类似字符数组,所以它每一位的单个元素都是可以提取的,如s=“abcdefghij”,则s[1]=“b”,s[9]=“j”,这可以给我们提供很多方便,如高精度运算时每一位都可以转化为数字存入数组。
char类型字符串
通过360百科可知,字符串是就是字符数组,根据上一篇可以写出这样一段代码:
char ch[100]
(甚至直接用红色代码)
好了,现在定义了一个长度为100的字符串
补充一点,如果括号里不写数字默认是后面大括号赋值的长度
输入输出:
#include<bits/stdc++.h>
using namespace std;
char ch[100],ch2[100],ch3[100];
int main(){
gets(ch);
cin>>ch2;
scanf("%s",&ch3);//这是什么以后再说
return 0;
}
这三种
这种字符串有内置的几个函数,这里只写一个:strlen(ch)
strlen(ch);//获取长度
这种是C语言原生字符串,%s代表这种类型
但是还有一种字符串,推荐使用这种:string
string类型字符串
他是一个结构体类型,至于结构体是什么之后再说,所以他不会变颜色
看代码:
#include<bits/stdc++.h>
using namespace std;
string str;
int main(){
cin>>str;//输入
cout<<str;//输出
cout<<' '<<str[0];//输出
return 0;
}
以上这段代码是把str和第一个字符输出
还有一些函数,常用的就是名字.length()
str.length();//长度
//str是字符串的名字
函数
可不要牵扯到 y=f(x),就只是函数而已
函数是指一段在一起的、可以做某一件事儿的程序。也叫做子程序、(OOP中)方法。
一个较大的程序一般应分为若干个程序块,每一个模块用来实现一个特定的功能。所有的高级语言中都有子程序这个概念,用子程序实现模块的功能。在C语言中,子程序的作用是由一个主函数和若干个函数构成。由主函数调用其他函数,其他函数也可以互相调用。同一个函数可以被一个或多个函数调用任意多次。
在程序设计中,常将一些常用的功能模块编写成函数,放在函数库中供公共选用。要善于利用函数,以减少重复编写程序段的工作量。
由360百科得知,自己懵圈了 了程序是函数的别名
别急慢慢来
函数的用途是把一段需要重复写的代码放进去,或者是递归(不是PassATurtle),或者【你就是干脆想放他进去】
函数怎么定义?
/*
返回值类型 函数名(参数,参数2...){
内容
return 返回值;
}
*/
bool cmp(int a,int b){
return a>b;
}
函数的定义就是这么简单
首先是返回值类型,return后面跟的是什么数据类型就写什么类型,里面是参数,大括号里面是内容
如果你定义了个void类型,可以写return也可以不写,return代表跳出函数,之后的语句都不执行
如何调用呢?
函数名(参数,参数2...);
就这么简单
如果没有参数可以不写
参数就是你要传递给函数的信息
怎么获取函数的返回值呢?执行完函数之后,函数本身就是个值,可以直接放进if或直接使用变量保存,void无返回值就不用保存
注意一点,数组的名字=数组第一个元素的指针(?),所以如果你要传数组最好还是改成全局变量,string除外
总结
还有下一篇