C语言字符串处理函数(2)


函数名: strcmp 
功  能: 比较字符串str1和str2。
用  法: int strcmp(char *str1, char *str2); 
说  明: 当s1<s2时,返回值<0   
          当s1=s2时,返回值=0   
          当s1>s2时,返回值>0   
          即:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇'\0'为止。
程序例: 
#include<stdio.h>   
#include<string.h>   
void main()   
{   
    char string[20];   
    char str[3][20];   
    int i;   
    for(i=0;i<3;i++)   
    gets(str[i]);   
    if(strcmp(str[0],str[1])>0)   
    strcpy(string,str[0]);   
    else   
    strcpy(string,str[1]);   
    if(strcmp(str[2],string)>0)   
    strcpy(string,str[2]);   
    printf("\nThe largest string is %s\n",string);   



 
函数名: stricmp 
功  能: 以大小写不敏感方式比较两个串 
用  法: int stricmp(char *str1, char *str2); 
程序例: 
#include <string.h> 
#include <stdio.h> 
int main(void) 

  char *buf1 = "BBB", *buf2 = "bbb"; 
  int ptr; 
  ptr = stricmp(buf2, buf1); 
  if (ptr > 0) 
      printf("buffer 2 is greater than buffer 1\n"); 
  if (ptr < 0) 
      printf("buffer 2 is less than buffer 1\n"); 
  if (ptr == 0) 
      printf("buffer 2 equals buffer 1\n"); 
  return 0; 

 
 
函数名: strerror 
功  能: 返回指向错误信息字符串的指针 
用  法: char *strerror(int errnum); 
程序例: 
#include <stdio.h> 
#include <errno.h> 
int main(void) 

  char *buffer; 
  buffer = strerror(errno); 
  printf("Error: %s\n", buffer); 
  return 0; 

 
 
函数名: strcmpi 
功  能: 将一个串与另一个比较, 不管大小写 
用  法: int strcmpi(char *str1, char *str2); 
程序例: 
#include <string.h> 
#include <stdio.h> 
int main(void) 

  char *buf1 = "BBB", *buf2 = "bbb"; 
  int ptr; 
  ptr = strcmpi(buf2, buf1); 
  if (ptr > 0) 
      printf("buffer 2 is greater than buffer 1n"); 
  if (ptr < 0) 
      printf("buffer 2 is less than buffer 1n"); 
  if (ptr == 0) 
      printf("buffer 2 equals buffer 1n"); 
  return 0; 

 
 
函数名: strncmp 
功  能: 串比较 
用  法: int strncmp(char *str1, char *str2, int maxlen); 
程序例: 
#include <string.h> 
#include <stdio.h> 
int  main(void) 

  char *buf1 = "aaabbb", *buf2 = "bbbccc", *buf3 = "ccc"; 
  int ptr; 
  ptr = strncmp(buf2,buf1,3); 
  if (ptr > 0) 
      printf("buffer 2 is greater than buffer 1\n"); 
  else 
      printf("buffer 2 is less than buffer 1\n"); 
  ptr = strncmp(buf2,buf3,3); 
  if (ptr > 0) 
      printf("buffer 2 is greater than buffer 3\n"); 
  else 
      printf("buffer 2 is less than buffer 3\n"); 
  return(0); 

 
 
函数名: strncmpi 
功  能: 把串中的一部分与另一串中的一部分比较, 不管大小写 
用  法: int strncmpi(char *str1, char *str2); 
程序例: 
#include <string.h> 
#include <stdio.h> 
int main(void) 

  char *buf1 = "BBBccc", *buf2 = "bbbccc"; 
  int ptr; 
  ptr = strncmpi(buf2,buf1,3); 
  if (ptr > 0) 
      printf("buffer 2 is greater than buffer 1n"); 
  if (ptr < 0) 
      printf("buffer 2 is less than buffer 1n"); 
  if (ptr == 0) 
      printf("buffer 2 equals buffer 1n"); 
  return 0; 

 
 
函数名: strncpy 
功  能: 串拷贝 
用  法: char *strncpy(char *destin, char *source, int maxlen); 
程序例: 
#include <stdio.h> 
#include <string.h> 
int main(void) 

   

char string[10];
char *str1 = "abcdefghi";
strncpy(string, str1, 3);
cout<<"length="<<strlen(string)<<endl;
printf("%s\n", string);

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/957aeba2aae4705b61b9abd8bbe3283a.html