님들아 이것좀 가르쳐주세여......
다른 카페에 올려도 제대로 답변을 안해주네여 ㅜㅜ
예제를 드리자면 예제는 일딴
#include<stdio.h>
#include<conio.h>
void main()
{
int a = 5, b = 3, r1, r2, r3, r4;
r1 = a & b;
r2 = a | b;
r3 = a ^ b;
r4 = ~b;
printf("a & b = %d\n", r1)
printf("a | b = %d\n", r2)
printf("a ^ b = %d\n", r3)
printf("~b = %d\n", r4)
getch();
}
실행결과
a & b = 1
a | b = 7
a ^ b = 6
~b = -4
이거인데여 a & b 이나 a | b, a ^ b, 이런게왜 쓰이는지 그리고
뒤에 구하는 공식이 무슨 00000101
& 00000011 (등등.......)
해서 & 해서 결과가 맨 첨은 결과가 1이 나오는데 그 이유를 모르겠음 더하기나 빼기도 아니고 &거는 어떻게 계산을..?....
또 &나 |, ^ ~ 이게 책에는 두 비트가 서로 다르면 거짓 이런공식이라고 앞에서는 말해줬는데 무슨 더하기 그런걸 인용한건가 도저히 모르겠음.....
&등 이런것좀 +기나 - 이런 공식이 있나? 암튼 잘좀 갈켜주세여.......
도저히 손을 써봐도........
참고로 이책은 c/c++ 높이뛰기 81p~82. 입니다......
신속한 답변을 부탁......
그리고 뽀나리로 한개만더.....
#include<stdio.h>
#include<conio.h>
void main()
{
int a = 5, b = 3, c= 1, d; /*여기서 d가 하는 역활은? 먼지.......??*/
d = (a = a - 2) || (b = b - 1);
printf("d = %d a = %d b = %d\n", d, a, b);
d = (a = a - 3) && (c = c + 3);
printf("d = %d a = %d c + %c\n" ,d, a, c);
getch();
}
실행결과
d = 1 a = 3 b = 3
d = 0 a = 0 c = 1
뽀나리 예제는 이거인데여...........여기서도 앞에것과 마찬가지로 분명히!!!!!!!!!
이 예제 나온 페이지 전에는 !는 참을 거짓, 거짓을 참 &&는 두피연산자 값이 둘다 참이면 참 이런식으로 되있는데 뭔!!!!!!!! a를 구하라는 듕 나참 이거 d는 구하는게 이해가겠는데.........도저히 a랑 b c 는 왜 앞에서 뭔지 int 로 선언했는데 왜 또 뒤에와서 실행결에과에 다시 a는 3이라는둥 뜨는지.또 a나 b는 어케 구하져?
특히 강조해서 갈켜줄것은 ~ 나 ! & ^ | || && 이런 것들 계산할때 무슨 연산자를 중심으로 두 비트가 모두 거짓일때 거짓인둥 이렇게 안쓰이고 어떤 공식이있나? +같은 갈켜주세여.......
무슨 식이 00000101
&00000011 인데 값이 왜 1이나오는지 이런것을 꼭!
페이지 83인가 82에 있음.....ㅜㅜ
꼭 신속하고 정확하고 간략하고 알아듣기쉽게좀.....ㅜㅜ
|