字符串

xiaoxiao2022-06-11  26

字符串

#include<stdio.h>//寻找第二个字符串是否是第一个字符串的子字符串 int strlen(const char* str) { int i = 0; while (*str != '\0') { str++; ++i; } return i; } void copystr(char *str1, char *str2) { while (*str2 != '\0') { *str1 = *str2; str1++; str2++; } *str1 = '\0'; } int constainstr(char *str1, char* str2) { char str[1000]; char *str3; int flag = 0; str3 = str; copystr(str3, str2); while (*str1 != '\0') { if (*str1 == *str3) { str3++; if (*str3 == '\0')flag = 1; } else { str3 = str; copystr(str3, str2); } str1++; } return flag; } void inputstr(char* str) { char ch; while (1) { if ((ch = getchar()) == '\n') { break; } *str = ch; str++; } *str = '\0'; } int main() { char *str1; char *str2; char str5[1000], str6[1000]; str1 = str5; str2 = str6; inputstr(str1); inputstr(str2); if ( (int)constainstr(str1,str2)== 1) { printf(" it is son string \n"); } return 0; } #include <iostream> #include<string> using namespace std; char *mystrcat(char *dst,const char *src) //用自己的方式实现strcat函数功能 { char *p=dst; //下面的操作会改变目的指针指向,先定义一个指针记录dst while(*p!='\0')p++; dst[0]='1'; while(*src != '\0')*p++=*src++; *p='\0'; return dst; } int main() { char str1[]="abc";//char * str1="abc";这样会发生错误 char str2[]="def"; char *str3; str3=mystrcat(str1,str2); cout<<str3; return 0; }
转载请注明原文地址: https://www.6miu.com/read-4931856.html

最新回复(0)