인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

밝은 늑대님의 프로필 이미지

작성한 질문수

홍정모의 따라하며 배우는 C언어

7.8 단어 세기 예제

flag의 의미

작성

·

37

1

강의에서 flag = false일때 아직 시작되지 않음이라는 상태이고, true일때 시작됬고 더이상 받아들여지지 않음. 인데 이를 반대로 생각했어서 이해가 더뎠습니다. 혹시 반대로 사용하는것은 권장하지 않는지 알려주세요.

즉 true일때 시작되지 않았으므로 값을 넣으면 증가 가능함. false일때 시작됬으므로 증가가 불가능함. 이라고 하면 true , false의 의미와 동일하게 되지 않나요?

일반적으로 c에서는 강의처럼 사용하기 때문에 이렇게 사용하는건가요?

답변 2

0

durams님의 프로필 이미지

안녕하세요, 질문&답변 도우미 durams입니다.

말씀하신 것처럼 플래그 변수의 의미를 반대로 사용하셔도 문제가 없습니다. 프로그램 동작에도 영향을 주지 않고, 성능에도 차이가 없기 때문입니다.

bool 변수를 사용할 때 true와 false가 각각 어떤 상태를 의미할지는 코드를 작성하는 프로그래머가 결정합니다. 보통 읽는 사람이 직관적으로 이해하기 쉽도록 작성하죠. 질문자님이 강의에서 나온 것과 반대로 했을 때 더 이해가 잘 갔다면, 그렇게 하셔도 됩니다.

아니면 bool 변수의 이름 자체를 좀 더 의미를 담도록 변경해보는 것도 좋은 방법입니다. 예를 들어 line_flag 대신 line_finished로 작성해서 줄이 끝났는지 의미하는 플래그로 명확하게 사용할 수 있겠죠.

강의를 수강하시면서 꼭 강의에 나온 코드와 동일하게 작성하지 않으셔도 괜찮습니다. 같은 기능을 수행하는 코드는 수많은 방식으로 구현이 가능하기 때문이에요.(물론 어떤 알고리듬을 사용하느냐에 따라 성능이 차이날 수 있지만, 현재 단계에서는 크게 신경쓰지 않으셔도 됩니다) 그러니 질문자님 스스로 이해하기 쉬운 방향으로 작성하시고, 정답을 출력한다면 안심하셔도 됩니다.

 

0

인프런 AI 인턴님의 프로필 이미지

안녕하세요, 인프런 AI 인턴입니다. 밝은 늑대님.

flag 변수를 사용할 때 truefalse의 의미는 매우 컨텍스트에 의존적입니다. 일반적으로 flag는 특정 조건이나 상태를 추적하기 위해 사용되며, truefalse가 무엇을 의미하는지는 코드의 목적에 따라 달라질 수 있습니다.

일반적인 사용 예:

  • true: 어떤 조건이 충족되었음을 나타내거나, 어떤 작업이 진행 중임을 나타냅니다.
  • false: 조건이 충족되지 않았거나, 작업이 완료되었음을 나타냅니다.

지금 질문에서 다뤄진 내용처럼, truefalse의 의미는 설정하기 나름입니다. 그러므로 반대로 사용할 수도 있지만, 중요한 점은 코드의 가독성과 일관성을 유지하는 것입니다. 코드의 다른 부분에서 flag의 사용 방식과 일치시킴으로써, 코드 파악이 쉬워지고 오류를 줄일 수 있습니다.

권장사항:

  1. 일관성 유지: 프로젝트 내에서는 같은 방식으로 flag를 사용하는 것이 좋습니다. 컨텍스트에 따라 truefalse의 의미가 명확해야 합니다.
  2. 주석 활용: 다른 사람이 코드의 의도를 쉽게 이해할 수 있도록 주석을 통해 flag의 의미를 명확히 설명하는 것이 좋습니다.

관련하여 자세한 설명이 제공된 유사한 질문을 참고할 수 있도록 아래 링크를 공유합니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.