系列文章目录
第一章 C/C++学习笔记之数字的处理
第二章C/C++学习笔记之一些特别的函数
前言
这里的学习笔记是一些特别的函数,在有时候的编程的时候知道这些函数会极大的减少工作量,这些函数是我在平时刷题的时候遇到的,以后还会补足这一章的内容,这一章的知识点是活火山,我会时不时的来的。
提示:以下是本篇文章正文内容,下面案例可供参考
一、特殊函数
1.防止输入换行(空格)程序
代码如下(示例):
for(i=o;i<9;i++)
{
while(getchar()!='\n')
continue;
cin>>a[i];
}
2.有关于数组的函数
一维数组其实也是个字符串
一维数组的输入
for(i=o;i<10;i++)
{
cin>>a[i];
}
把数组向后移动M个数
for(i=n-1;i>0;i--)
{
a[i+m]=a[i];
}
二维数组的创建
int a[3][3],i,j;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
cin>>a[i][j];
}
}
数组的长度
sizeof(a);
2.有关于字符串的函数
字符串的输入
string str;
cin>>str;
//或者
char a[100];
gets_s(a);
//或者
string name;
getline(cin,name);
字符串的长度
string str;
n=strlen(str);
字符串连接
字符串还有一种字符串连接的格式:
char *strncat (char * s1,char * s2, int n );
//这里的用来表示是s1所指向的字符串后面,仅仅连接上s2所指的字符串的前n个字符。
#uinclude <string>
string str1,str2;
cout<<connect(str1,str2);
//或者
strcat(str1,str2); //前面的是被添加的字符串
字符串复制函数 strcpy()
字符串复制函数另一种格式 char * strncpy (char str1, const char * str2, int n)
//这种函数的作用是str1被复制了str2 的前n个字符,另外最后边加一个字符串结束符‘\0’。
#uinclude <string>
char str1[8],str3[8];
char str2[]="string";
strcpy (str1,str2); //前面的是被复制的字符串,也就是说前面的字符串被更新。
strncpy (str3,str1,3);
str3[3]='\0';
cout<<str1<<endl;
cout<<str3<<endl;
char *str4=strcpy(str3,strcpy(str1,str3));
cout<<str4<<endl;
//输出结果:str1:string str3:str str4:string
字符串的比较函数strcmp()
int result=strcmp(m1,m2,n); //这里比较两个字符串前N个字符,如果前者大,则返回值大于零,如果两者相等,那么返回值为零,如果后者大,那么返回值小于零。
3.判断字符串类型的函数
判断数字,字母,空格
isalpha(str[i]); //判断是否字母
isdigit(str[i]); //判断是否数字
str[i]==32; //判断是否空格
总结
常用的函数暂时记到这里,后续会持续增加