본문 바로가기
SMALL

전체 글139

C030_strcmp 함수 구현해서 사용하기 strcmp는 입력받은 두개의 함수를 ascii코드 값으로 비교해서 첫 번째 인자가 더 크면 양수를 두 번째 인자가 더 크면 음수를 서로 같으면 0을 반환해 줍니다. #include #include int main() { printf("%d\n", strcmp("abc", "ab")); //1 printf("%d\n", strcmp("abc", "abv")); //-1 printf("%d\n", strcmp("abc", "abc")); //0 return 0; } strcmp함수 int OdOp_strcmp(char *s1, char *s2) { unsigned char c1; unsigned char c2; c1 = *s1; c2 = *s2; while (c1 || c2) { if (c1 > c2) r.. 2023. 10. 25.
C029_strlcpy 함수 구현해서 사용하기 strlcpy는 strncpy와 비슷하다고 생각하면 될 것 같습니다. strncpy는 사용자가 지정한 자릿수만큼 복사 붙여 넣는 것을 의미합니다. 마찬가지로 똑같이 복사 붙여넣기 하는데 return해주는 값이 다릅니다. 복사하는 대상의 문자열 길이를 리턴해줍니다. size_t strlcpy(char *dest, char *src, size_t destsize) dest에 src를 destsize-1만큼 복사해 줍니다. (null문자를 포함하기 때문입니다.) 반해주는 값은 src의 길이입니다. 이때 dest나 src중 하나라도 문자열이 비어있다면 0을 반환해 줍니다. unsigned int OdOp_strlcpy(char *dest, char *src, unsigned int size) { unsigned.. 2023. 10. 24.
문자열 소문자로 변환하기 ascii코드를 활용하여 변환할 예정입니다. 소문자 a의 ascii코드 값은 97이고 A의 ascii코드 값은 65입니다. 차이가 32 나죠. 대문자가 입력되면 32만큼 더하면 소문자가 됩니다. 그걸 이용해서 한번 만들어 보겠습니다. char *strlowcase(char *str) { int i; i = 0; while (str[i] != '\0') { if (str[i] >= 65 && str[i] 2023. 10. 23.
문자열 대문자로 변환하기 ascii코드를 활용하여 변환할 예정입니다. 소문자 a의 ascii코드 값은 97이고 A의 ascii코드 값은 65입니다. 차이가 32 나죠. 소문자가 입력되면 32만큼 빼면 대문자가 됩니다. 그걸 이용해서 한번 만들어 보겠습니다. char *strupcase(char *str) { int i; i = 0; while (str[i] != '\0') { if (str[i] >= 'a' && str[i] 2023. 10. 22.
LIST