a : ABCDE
a : ABCDEFGH
Len : 8
a : FGHIJ
a : FGH
a : FGH, c : FGH
上記のように表示されるプログラムを作りたいのですが、なかなかできません。下記のようなプログラムを作ったのですがどこが間違っているのかよくわかりません。分かる方、指摘をお願いします。
#include <stdio.h>
void my_strcpy(char s[], char t[]);
int my_strlen(char s[]);
void my_strcat(char s[], char t[]);
int main(){
char a[10];
char b[10] = "ABCDE";
char c[] = "FGH";
int len;
my_strcpy(a, b);
printf("a : %s\n", a);
my_strcat(a, c);
printf("a : %s\n", a);
len = my_strlen(a);
printf("Len : %d\n", len);
my_strcpy(a, "FGHIJ");
printf("a : %s\n", a);
a[3] = '\0';
printf("a : %s\n", a);
if(strcmp(a, c) == 0){
printf("a : %s, c : %s\n", a, c);
}
int i, s, t;
my_strcpy(a, b + 2);
printf("a : %s\n", a);
void my_strcpy(char s[], char t[]){
for (i = 0; t[i] != '\0'; i++){
s[i] = t[i];
}
s[i] = '\0';
}
int my_strlen(char s[]){
int i;
for (i = 0; s[i] != '\0'; i++);
return i;
}
void my_strcat(char s[], char t[]){
int i, j;
for (i = 0; s[i] != '\0'; i++);
for (j = 0; t[j] != '\0'; i++, j++){
s[i] = t[j];
}
s[i] = '\0';
}
}
お礼
指摘、ありがとうございました。 とてもわかりやすかったです。