본문 바로가기

C언어 기초다지기2

실전 C언어 코딩 리뷰 - 문자열 복사하기[strcpy() vs strncpy()] 자바나 C#계열 언어는 String 자료형이 있어서, 문자 A를 B에 복사한다면 "B = A" 이런 식으로 대입을 한다. 반면 C언어는 String 타입이란 게 없어서 이렇게 대입할 경우 원하는 결과가 나오지 않는다. C언어를 어렵게 생각하게 만드는 부분이기도 하다. 문자열 복사는 strcpy()나 strncpy() 함수를 이용한다. strcpy() 헤더 파일 : string.h #include // src, dest 문자열을 복사하고 문자열(dest)의 시작주소를 리턴한다. char* strcpy(char* dest, const char* src); 두 번째 인자로 전달받은 메모리 주소에 저장된 문자열을 첫 번째 인자로 전달받은 메모리 주소에 복사한다. 순서가 뒤에서 앞으로이다. 실전 예제 : strc.. 2020. 10. 1.
실전 C언어 코딩 리뷰 - 문자열 비교하기(strcmp vs strncmp) 자바나 C#계열 언어와 C언어의 가장 큰 차이점은 문자열 처리 방식이다. 처음 C를 접할 때 가장 이해하기 어려운 부분이기도 하다. C언어에서 문자열은 숫자를 비교하듯 변수 그 자체로 비교할 수 없다. 기본 함수인 strcmp()나 strncmp() 함수를 이용해야 한다. 헤더 파일 : string.h #include // str1, str2 : 비교 문자열 int strcmp(const char* str1, const char* str2); 포인터로 받는 두 개의 문자 str1과 str2를 비교한다. 각 문자열의 첫 번째부터 비교해서 두 문자가 다르거나, NULL을 만날 때까지 비교한다. [비교 결과 ] ▶ 일치 : 0 ▶ 불일치 : 0이 아닌 값 (str1이 크면 0보다 큰 값, 작으면 0보다 작은 .. 2020. 9. 30.