여기다 질문해도 되나 모르겠는데요 C언어 공부하다 질문드립니

zzwing의 이미지

제가 이제 C언어 기초공부 시작했는데요

#include <stdio.h>

my_strlen(char *s)
{
char *p = s;

while(*p)
p++;
return(p-s);
}

main()
{
char p[10] = "Kim";

printf("length of \"kim\" is %d\n",my_strlen(p));
}

이거랑

#include <stdio.h>
void my_strcpy(char *s,char *t)
{
while((*s++ = *t++));
}

main()
{
char *x = "Kim";
char y[10];
my_strcpy(y,x);
printf("%s %s\n",x,y);
}

이거랑

#include <stdio.h>
#include <string.h>

void my_strcat(char s[],char t[])
{
int i,j;

i = j = 0;
while(s[i] != '\0')
i++;
while((s[i++] = t[j++]) != '\0')
;
}

main()
{
char *p = "Taegyun";
char q[20];

strcpy(q,"Kim");
my_strcat(q,p);
printf("%s %s\n",p,q);
}

이거 3개를 if랑 goto문만 써서 만들어낼수 있을까요?
제 머리로는 엄청 어렵더군요 만들 필요가 없다는데 그래도 한번 도전해보고
싶기도해서요 부탁드립니다
ps) 뛰어쓰기가 안대는군요 ;; 보기 힘드시더라도 잘 아시는분 부탁드려요

sodomau의 이미지

함수 호출이야 그냥 호출하는 부분에 함수 코드 박아넣으면 될테고요

아마 루프를 if, goto 로 처리하라는 거 같은데

loop:
if(어쩌구저쩌구) goto exit_loop;
머머머
goto loop;
exit_loop:
루프 뒤

이렇게 하면 루프도 if, goto 만 써서 처리할 수 있습니다.
이런건 근데 어셈같은거나 사용할때나 그 먼 옛날 gwbasic같은 언어 하던 시절에나 쓰던것들인거 같은데, 음..