2017-09-26  本文已影响0人  苏鑫的博客
#include<stdio.h>

#define MAXSTRSIZE 255
#define True 1
#define False 0
typedef int bool;
typedef unsigned char String[MAXSTRSIZE+1];
void StrAssign(String,unsigned char []);
void StrShow(String);
int StrLength(String);
void StrCopy(String,String);
void SubString(String,String,int,int);
int StrCompare(String,String);
bool StrEmpty(String);
void Index(String,String,int);


void StrAssign(String s,unsigned char chars[]){
    int i = 0;
    while(chars[i]!='\0'){
        s[i] = chars[i];
        i++;
        
        }
    }
bool StrEmpty(String s){
    if(s[0]=='\0'){
        return True;
        }else{
        return False;   
        }
    }
void StrCopy(String t,String s){
    int i = 0;
    while(s[i]!='\0'){
        t[i] = s[i];
        i++;
        }
    }
int StrLength(String s){
    int i = 0;
    while(s[i]!='\0'){
        i++;
        }
    return i;
    }
int StrCompare(String s,String t){
    if(!StrEmpty(s)&&!StrEmpty(s)){
        if(StrLength(s)==StrLength(t)){
            int i = 0;
            while(s[i]!='\0'&&t[i]!='\0'){
                if(s[i]!=t[i])break;
                i++;
                }
            return 0;
            }else{
            return StrLength(s)-StrLength(t);   
            }
        }
        return -1;
    }
void SubString(String sub,String s,int pos,int len){
    int i = 0;
    while(s[pos]!='\0'&&len>0){
        sub[i++] = s[pos++];
        len--;
        }
    }
void Index(String s,String sub,int pos){
    if(1<=pos||pos<=StrLength(s)){
        int i = 0;
        while(sub[i]!='\0'){
            if(s[pos++]!=sub[i++])break;
            }
        if(i==StrLength(sub)){
            printf("true");
            }
        }
    }
void StrShow(String s){
    if(s){
        printf("%s\n",s);
        }
    }
    
int main(){
    String str;
    unsigned char c[]= "hello world!";
    StrAssign(str,c);
    StrShow(str);
    String t;
    StrCopy(t,str);
    StrShow(t);
    String sub;
    SubString(sub,str,6,5);
    StrShow(sub);
    Index(str,sub,6);
    
    }

上一篇下一篇

猜你喜欢

热点阅读