测试程序

#include<iostream>
#include<cstring>
using namespace std;
int a[204],b[204],lena,n;
char s1[100]="12345";
char s2[100]="abcdefg";
char s3[100]="ABCDE";
int main()
{
strncat (s1,s2,3);//s1="12345abc";
strncpy(s1,s3,3);//s3的前三个字符拷贝到s1,s1="ABC45abc";
strncpy(s2,s3,6);//s2="ABCDE";
strncmp(s1,s3,3);//比较s1和s3的前三个字符,比较结果相等则输出0,小于则输出负数,大于则输出正数;
char *p=strchr(s1,'B');//在s1中查找'B' 第一次出现的位置;
if(p)//判断p是否为空指针。
cout<<"5)"<<p-s1<<","<<*p<<endl;
p=strstr(s1,"45a");//在s1中查找子串"45a"。s1="ABC45abc"
//strtok 用法:给定的字符串分隔成若干个子串
cout<<"strtok usage demo:"<<endl;
char str[]="-this,a sample string,OK.";
// 使用strtok从str中抽出被" ,.-"这几个字符分隔的子串
p = strtok (str," ,.-");
while (p!=NULL)//只要p不为NULL则说明找到一个子串。
{
cout<<p<<endl;
p= strtok(NULL," ,.-");//后续调用,第一个参数必须是NULL
}
return 0; }

解释与函数代码

char *strchr(const char* str,int c);

作用是寻找字符c在字符串str中第一次出现的位置。如果找到,就返回指向该位置的char*指针;如果str中不包含字符c,则返回NULL。

strncpy(char s1[a],char s2[b],n)

作用是如果s3长度大于等于n,则将s3的前n个字符拷贝到s1里面去,相应的会替换掉s1里面的n个字符,若小于n则全部拷贝到s1里面去,且“\0”也会被拷贝,即s3的字符长度。

strncat(const char s1[a],char *s2[b],n);

作用是把s2数组的前n个字符粘贴到s1数组的后面。

char* strstr(const char*str,const char*subStr);

作用是寻找子串subStr在str中第一次出现的位置,如果找到,就返回指向该位置的指针,没找到就返回NULL。

int stricmp(const char *s1,const char *s2);

作用是大小写无关的字符串比较,如果是s1小于s2则返回负数,若等于则返回0,大于则返回正数。不同编译器结果可能不同。

int strncmp(const char *s1,const *s2,int n);

作用是比较是s1前n个字符组成的子串和s2前n个字符组成的子串的大小,若长度不足n,则取整个串作为子串。返回值和strcmp类似。

char *strncpy(char *dest,const char *src,int n);

作用是拷贝src的前n个字符到dest。如果src长度大于等于n,该函数不会自动往dest中写入“\0”,若src长度不足n,则拷贝src全部内容以及结尾的“\0”到dest。

char *strtok(char *str,const char * delim);

连续调用该函数若干次,可以做到:从str中逐个抽取出被字符串delim中的字符分隔开的若干个子串。

int atoi(char *s);

将字符串s里的内容转换成一个整形数返回。比如,字符串s的内容是“1234”,那么函数返回值就是1234,如果s格式不是一个整形,比如“a12”,那么返回0。

double atof(char *s);

将字符串s中的内容转换成实数返回,比如,“12.34”就会转换成12.34.如果s的格式不是一个实数,则返回0。

char *itoa(int calue,char *string,int radix);

将整形值value以radix进制表示法写入string。

最新文章

  1. t4 加载文件到解决方案
  2. Web UI - Javascript之DOM Ready
  3. postgresql导入及导出
  4. C#:使用MD5对用户密码加密与解密
  5. Linux磁盘空间被未知资源耗尽【转】
  6. jquery滚动条
  7. 安装Ubuntu服务器
  8. [置顶] IOS 基础入门教程
  9. poj 2782 Bin Packing (贪心+二分)
  10. sql update 触发器 可获得被update的行的信息
  11. Linux Shell 之 Shell中的函数调用
  12. os x下如何挂载iso镜像
  13. Mybatis 基本使用
  14. [HBase_3] HBase 命令
  15. dev gridview 设置分组
  16. 11.4 Daily Scrum
  17. 【PAT】1103 Integer Factorization(30 分)
  18. Xianfeng轻量级Java中间件平台:属性管理、字典管理
  19. bzoj 3795: 魏总刷DP
  20. 配置 tsconfig.json

热门文章

  1. TR-银行通信相关文档
  2. Gradle3.0新指令api、provided、implementation等对比
  3. Ane技术大全 - Devil程序员
  4. 阅读笔记---第三章 Xen信息页
  5. python相关软件安装
  6. c# String类
  7. web服务版智能语音对话
  8. IDEA实用教程(十)—— 配置Maven的全局设置
  9. Kotlin对象表达式要点与Lambda表达式
  10. linux系统编程之管道(二)