1. if 조건문을 사용 할 때, 조건식 전체를 괄호로 감싸야 함
if ((number % n == 0) && (number % m == 0)) {
2. C 언어에서는 Python처럼 ** 연산자를 사용하여 거듭제곱을 계산할 수 없음
- int result = 2 ** 2; // C에서는 사용 불가 → 컴파일 오류 발생
- 해결 방법
- pow() 함수 사용 (#include 필요) : pow(2, 2)는 2^2
- * 연산자 사용 : 2 * 2는 2^2
- 비트 연산자 (<< 왼쪽 시프트) 사용 : 1 << n은 2의 n제곱을 표현하는 것 / 단, 2의 거듭제곱을 할 때에만 사용 가능
3. strcmp() 함수란?
- strcmp() 함수는 C 언어에서 두 문자열을 비교하는 함수
- 문자열이 같으면 0, 첫 번째 문자열이 크면 양수, 작으면 음수를 반환
#include <stdio.h>
#include <string.h> // strcmp() 함수가 선언된 헤더파일
int main() {
char str1[] = "hello";
char str2[] = "world";
char str3[] = "hello";
// 두 문자열이 같은 경우 (str1 == str3)
if (strcmp(str1, str3) == 0) {
printf("str1과 str3은 같습니다!\n");
}
// str1이 str2보다 작은 경우 (사전순 비교)
if (strcmp(str1, str2) < 0) {
printf("str1은 str2보다 사전순으로 앞에 있습니다!\n");
}
// str2가 str1보다 큰 경우
if (strcmp(str2, str1) > 0) {
printf("str2는 str1보다 사전순으로 뒤에 있습니다!\n");
}
return 0;
}
'C' 카테고리의 다른 글
[C언어] 리스트(배열)의 길이 구하기 (0) | 2025.02.28 |
---|---|
[C언어] 문자열 복사 후, 왜 answer[s] = '\0';을 넣어야 하는가 (0) | 2025.02.28 |