본문 바로가기
프로그래밍/독학(어려워요 같이해요)

c언어 if문에 문자열 사용해서 출력이 안되는데 도와주세요.

by 노마드데이터랩 2020. 5. 2.
728x90
반응형

안녕하세요. 오늘은 if문에 문자열 사용해서 출력이 안되는데, 도와달라는 질문을 받았습니다. 바로 내용으로 들어가볼게요. 코딩하신 내용은 다음과 같았습니다.

 

그럼 제가 수정을 한번 해보겠습니다.

#include <stdio.h>

int main() 
{
    char cal[2];
    
    int a, b;
    
    scanf("%s", cal);
    
    if (*cal == '-')
    {
        printf("%s", cal);
    }
    
    return 0;
}

차이점을 발견하셨나요? cal이 보시면 배열로 선언 되었습니다. 그러면 입력을 cal로 해도 저장은 주소값의 메모리에 저장이 되는거죠. 그럼 cal의 주소값의 데이터와 비교를 해야합니다. 그래서 포인터 연산자를 사용했습니다.

실행을 해보면 '-' 값을 넣었을 때 '-'가 출력이 되는걸 확인하실 수 있습니다.

오늘은 if문과 문자열에 관해 살펴보았습니다. 다음 시간도 기대해주세요~^^ 프로그래밍 화이팅입니다.

728x90
반응형

댓글