strcpy()函数和strcmp()函数怎么用?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了strcpy()函数和strcmp()函数怎么用?相关的知识,希望对你有一定的参考价值。

希望大家举例子说明(不要太深奥!!!)^^通俗一点!^_^!

strcpy是复制字符串
strcmp对比字符串
用的时候需要头文件#include<string.h>
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
main()

char a[10]="Hello!";
char b[10];
strcpy(b,a);//把a copy给b
puts(b);//打印出b
system("pause");


strcmp(a,b)用来对比字符串长度的,比如
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
main()

char a[10]="Hello!";
char b[20]="Hello word!";
if(strcmp(b,a)<0)//小于0的时候b对a长
puts(b);//打印出b
system("pause");
参考技术A strcpy是复制字符串
strcmp对比字符串
用的时候需要头文件#include<string.h>
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
main()

char
a[10]="Hello!";
char
b[10];
strcpy(b,a);//把a
copy给b
puts(b);//打印出b
system("pause");

strcmp(a,b)用来对比字符串长度的,比如
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
main()

char
a[10]="Hello!";
char
b[20]="Hello
word!";
if(strcmp(b,a)<0)//小于0的时候b对a长
puts(b);//打印出b
system("pause");
参考技术B   strcpy函数
  原型声明:extern char *strcpy(char* dest, const char *src);
  头文件:#include <string.h> 和 #include <stdio.h>
  功能:把从src地址开始且含有NULL结束符的字符串复制到以dest开始的地址空间
  说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
  返回指向dest的指针。
  典型实现:
  /**********************
  *C语言标准库函数strcpy的一种典型的工业级的最简实现
  *返回值:目标串的地址。
  *对于出现异常的情况ANSI-C99标准并未定义,故由实现者决定返回值,通常为NULL。
  *参数:des为目标字符串,source为原字符串
  */
  char* strcpy(char* des,const char* source)
  
  char* r=des;
  while((*(des++)=*(source++))!='\0');
  return r;
  
  /*while((*des++=*source++));的解释:赋值表达式返回左操作数,所以在赋值NULL后,循环停止*/
  示例:

  ⒈strcpy的实现代码
  char * strcpy(char * strDest,const char * strSrc)
  
  if ((NULL==strDest) || (NULL==strSrc)) //[1]
  throw "Invalid argument(s)"; //[2]
  char * strDestCopy = strDest; //[3]
  while ((*strDest++=*strSrc++)!='\0'); //[4]
  return strDestCopy;
  

  strcmp函数

  C/C++函数,比较两个字符串
  设这两个字符串为str1,str2,
  若str1==str2,则返回零;
  若str1>str2,则返回正数;
  若str1<str2,则返回负数。
  函数原型:extern int strcmp(const char *s1,const char *s2);
  示例:
  #include <stdio.h>
  #include <string.h>
  int 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);
  return0;
  

strcmp函数怎么用的?

参考技术A

strcmp函数用于两个字符串的比较,具体用法如下:

1、strcmp函数接受两个字符串类型的参数传入,根据比较结果返回一个int类型的值。

2、若返回结果的值小于 0,则表示在ASCII码上, str1字符串 小于 str2字符串。

3、若返回结果返回值 大于0,则代表 str2字符串 小于 str1字符串。

4、只有当返回值 为0时,两个字符串才是相同的。

扩展资料:

该函数只能用于比较字符串,不能比较数字等其他形式的参数,否则会报错。

根据ANSI的标准,函数的返回值为正数,负数,0 。不同的C返回的数值会有所不同。当两个字符串不相等时,C的标准没有规定返回值会是 1 或 -1,只规定了正数和负数。

通常情况下,会将两个字符的 ASCII 码之差作为比较结果由函数值返回。因此使用函数进行逻辑判断时应特别注意。

参考资料:

strcmp-百度百科

以上是关于strcpy()函数和strcmp()函数怎么用?的主要内容,如果未能解决你的问题,请参考以下文章

strcmp函数怎么用的?

strcmp怎么用在字符串上?

c语言 strcpy,strcat,strcmp函数模拟实现

strcpy和memcpy的区别

strcpy函数问题

用C语言程序,通过自定义函数实现字符串处理函数strcat、 strcpy、strcmp、strlen和的功能