프로그래밍

프로그램공부하는 건설사 직원인데 질문좀 ㅠㅠ

int data = 5 , result = 0; 인 변수가 선언되었다고 가정할시

1.

result = data == 5;

에서 result트와 데이터 값은 어캐 됨?

 

2.

result = data != 5 && (data = 0);

에서 result와 데이터 값은 어캐 됨?

 

연산 과정좀 가르켜줘 ㅠㅠ

특히 2번에서 데이터의부정을 5에 대입한다는게 이해가 안가

6개의 댓글

2019.11.11
[삭제 되었습니다]
2019.11.11
@구백육

그 왼쪽에 잇는 result는 0 아닌가요 그냥 결과값으로 생각 하면 되는건가요?

0
2019.11.11
[삭제 되었습니다]
2019.11.11
@구백육

그 data !이 5에서 0 처리 되는건가요?

0
2019.11.11

1.

(1)

result = data == 5;

의 의미는

"data == 5에서의 결과를 result로 저장합니다"임

(2)

data == 5는 data의 값이 5랑 같은가? 를 묻는 조건문임

(3)

위에서 data는 5였으므로 data == 5의 결과는 true인데, true는 정수값로 형변환 시 1로 취급하므로 result는 1

data는 값이 변동되지 않았으므로 data는 5

result = 1

data = 5

 

2.

(1)

result = data != 5 && (data = 0);

우선 2개로 나뉘어 있는 구문이다

data != 5 와 (data = 0)이라는 구문.

 

두 구문 사이의 &&은 논리 AND 연산자라고 하는데, 왼편과 오른편의 결과가 true로 같을 때에 true,

둘 중 하나라도 다르면 false, 둘다 false로 같을 때 false를 반환하는데

문제는 논리 AND 연산자는 왼쪽편부터 먼저 시작해.

 

(2)

data != 5는 역시 조건문인데, data의 값이 5랑 같지 않는가?를 물은 거야.

그러니, data는 5이므로 같은데 같지 않냐고 물었으니 false를 반환할거야.

 

(3)

여기서 중요한 것이 있어.

(2)에서 왼편의 결과가 false였지? 그럼 논리 AND 연산자는 무조건 false를 도출할 수 밖에 없어.

이럴 경우에는 그 다음 오른편 연산을 하지 않고 연산을 멈춰. 어차피 false니까 더 계산할 필요가 없잖아.

그래서 data에 0을 삽입하는 과정은 건너뛰게 돼.

 

그래서 결과로 보면

result는 false를 받았으므로 정수변환시 0이므로 result = 0

data는 아무런 값 변동이 없었으므로 data = 5가 된다.

0
2019.11.11
@숨은음은

아하 !=이 같지 않다는 뜻이었네 ㄷㄷ 감사합니다 전 data 5를 부정하여 0으로 만드는 줄 알았어요 궁금한점이 해결됐네요 감사해영

0
무분별한 사용은 차단될 수 있습니다.
번호 제목 글쓴이 추천 수 날짜 조회 수
5684 [프로그래밍] 그 혹시 게임쪽 종사자 있음? 17 god79ii 0 1 일 전 509
5683 [프로그래밍] 코린이 ㅅㅂ 뭐가 문젠지 모르겠어요 7 집에가게해줘 0 2 일 전 348
5682 [프로그래밍] Dear Imgui 라고 아시나요? 2 년째모쏠 0 2 일 전 197
5681 [프로그래밍] 현업개발자분들 주말엔 편하게 쉴수있나요? 10 키로 0 3 일 전 734
5680 [프로그래밍] 무엇이든 물어보세요. 28 변현제 0 5 일 전 356
5679 [프로그래밍] 금융권 SI 회사면 좋은건가.. 10 찰나생멸 1 6 일 전 373
5678 [프로그래밍] 개발자보단 엔지니어가 취업이 잘됨 5 iillillill 2 6 일 전 639
5677 [프로그래밍] 프론트엔드 개발자 연봉 1억 넘는 사람 있어? 13 잠적자 0 6 일 전 570
5676 [프로그래밍] Exiftool 이거 일본어 못 읽는데 13 부터시작하는이세... 0 8 일 전 216
5675 [프로그래밍] 반응형 웹페이지가 내가상상한거랑 좀 다르네 4 평택국 0 8 일 전 410
5674 [프로그래밍] 고졸 FE개발자 연봉, 상황에 조언좀.. 19 쾅꿍꿍 0 9 일 전 553
5673 [프로그래밍] 물경력들 보면 책임을 이해못하는것같음 5 mils 1 9 일 전 372
5672 [프로그래밍] GPT가 코딩 다해주네 3 겜신병자 0 10 일 전 699
5671 [프로그래밍] 크로스플랫폼의 욕심은 끝이없다 4 ye 0 13 일 전 373
5670 [프로그래밍] 월루중에 백준 풀어보고 있는데, 6 오뜨 0 14 일 전 650
5669 [프로그래밍] 같이 일했던 시니어급 개발자 아예 직무 바꿨네.. 15 흐린눈 2 15 일 전 673
5668 [프로그래밍] 안드로이드 스튜디오가 이상해요... 2 집에가게해줘 0 17 일 전 383
5667 [프로그래밍] 양심고백 5 너가전부옳아 0 17 일 전 374
5666 [프로그래밍] 멀티겜만드는거 첨인데 빡시네 4 아님나 0 17 일 전 416
5665 [프로그래밍] vscode에 이런 설정도 있나? 17 너가전부옳아 0 18 일 전 284