Esempio n. 1
0
//検索
int srch(char* org, char* match){
	//	方針:1文字目を探す→全一致かどうか確認する
	int orglength = Strlength(org);
	int matchlength = Strlength(match);
	int scm = orglength - matchlength + 1; //サーチ回数
	int srchresult = 0;				//発見回数
	
//	printf("%s:%d\n", org, orglength);
//	printf("%s:%d\n", match, matchlength);
	
	if (scm <= 0) {
		return 2;					//検索文字列が対象文字列より長い
	}
	
	int i;	int j;
	for(i = 0; i < scm; i++){		
		if (org[i] == match[0]) {
			
			for(j = 0; j < matchlength; j++){	//1文字目の一致
				if (org[i+j] != match[j]) {
					break;			//ハズレ
				}
				if ((org[i+j] == match[j]) & (j == matchlength - 1)) {
					srchresult++;	//発見
					break;
				}
			}
		}
	}

	if (srchresult == 1){
		printf("文字列\"%s\"が見つかりました。\n", match);
	}else if(srchresult > 1){
		printf("文字列\"%s\"が%d個見つかりました。\n", match, srchresult);
	}else{
		printf("文字列は見つかりませんでした。\n");
	}

	return 0;
}
Esempio n. 2
0
//copies the values of the 2nd parameter to the values of the first parameter also returns the string length
int Strcopy( char *first, const char *second )
{
   int len = Strlength( second );

   for( int i=0; i<len; i++ )
      {
         *first = *second;
         second++;
         first++;

      }
      
      *first = '\0';
      return len;


}