오유인페이지
개인차단 상태
아래나래님의 개인페이지입니다
회원가입 : 11-12-17
방문횟수 : 499회
닉네임 변경이력
일반
베스트
베오베
댓글
1605 2014-07-03 11:58:31 0
[새창]
안드로이드 4.0 이상이면
시스템 설정(환경설정) - 데이터 사용량 들어가서 어디에 데이터 쓰였는지 확인 가능합니다.
1604 2014-07-03 11:17:16 0
select * from tabbbbbbbbbbbbbbbbbbbbbbbb [새창]
2014/07/03 11:08:01
주무세요
1603 2014-07-03 11:16:32 0
C언어 ++연산자 결과가 왜 이렇게 나오죠.. [새창]
2014/07/03 01:28:51
오늩의유머님이
한 명령에서 증감연산자나 복합연산자가 둘 이상 쓰지 말라고 하셨는데
그거 말고도 증감연사자가 들어간 변수를 두 번 이상 쓰지 마세요.

printf("%d %d", ++a, a++);
가 아니라
printf("%d %d", a, ++a); 또한 엄밀히 말해 undefined behavior입니다.

증감연산자가 없어도 문제가 되는 경우를 하나 적고 끝내죠.

int Hello()
{
return printf("Hello");
}

int World()
{
return printf("World !");
}

int main()
{
int a = Hello() + World(); // Hello World!일까 World! Hello일까
return 0;
}
1602 2014-07-03 11:08:39 1
안드로이드 개발하시는 분 있나요? 리소스 불러오기에 대해서 질문있어요 [새창]
2014/07/02 20:24:14
AsyncTask를 써서
로딩 다 되기 전에는 로딩 중이라는 화면을 표시하고,
로딩이 끝나고 난 다음에 해당 리소스를 곧바로 사용하면 됩니다.
1600 2014-07-03 10:58:53 0
C언어 ++연산자 결과가 왜 이렇게 나오죠.. [새창]
2014/07/03 01:28:51
printf("%d %d", i,++i);
a[i] = i++;
int x = i + i++;
도 마찬가지로 실행 결과를 예측할 수 없습니다.

결론으로.
printf("%d %d", ++a, a++);


a = a + 1;
printf("%d %d", a, a);
a = a + 1;
과 다릅니다.

printf("%d %d", ++a, a++);
1. ++a가 먼저 참조될지 a++이 먼저 참조될지 알 수 없고
2. ++a가 먼저 참조된다고 하더라도 실행 시점에서 a의 주소에 있는 값을 알 수 없으며(a++가 실행되었느냐에 따라 값이 다릅니다.)
3. printf에 인수로 넘어가는 값과 실제 a의 값(메모리 값)이 또 다를 수 있습니다.
1599 2014-07-03 10:58:38 0
C언어 ++연산자 결과가 왜 이렇게 나오죠.. [새창]
2014/07/03 01:28:51
명령문 하나라도 실행 시점은 여러 군데죠.
예를 들어 && 연산자의 경우,
a && b라고 하면 a가 false일 경우, b가 계산되지도 않고 넘어가죠?
그런데 a && b 안에는 세미콜론이 없죠?
세미콜론이 없는데 b를 계산할지 안 할지 결정하려면 a를 '일단' 계산해 봐야 하죠?
실행 시점은 세미콜론이 아니므로,
증감연산자의 실제 연산도 세미콜론과는 상관없이 이루어집니다.

a[++i] = i;
이 명령문의 결과는 C++ 표준에 따르면 '정의되어 있지 않습니다.'

int x = 5, y = 6;
int z = x++ + y++;
이 경우에는 x가 y보다 먼저 증가하든, x가 y보다 나중에 증가하든
z에는 x와 y가 증가하기 전의 값이 들어가서 상관없습니다. (z = 11, x = 6, y = 7이 되겠죠.)

하지만
i++ * ++i; // i가 두 번 이상 변경됨
i = ++i; // 위와 마찬가지
++i = 2; // 위와 마찬가지
i = ++i +1 // 위와 마찬가지
++++++i; // (++(++(++i)))와 같음
이 경우는 모두 식의 값 또는 i의 최종 값이 어떻게 될지 알 수 없습니다.
1598 2014-07-03 10:58:12 1
C언어 ++연산자 결과가 왜 이렇게 나오죠.. [새창]
2014/07/03 01:28:51
한 문장에서 ++나 --가 적용되는 변수는 두 번 이상 쓰면 안 됩니다.
또한 한 문장에서 ++나 --가 적용되는 바로 그 변수에 뭔가를 또 대입(=, +=, -= 등)시키면 안 됩니다.
만약 이걸 지키지 않는다면 해당 문장은 Undefined Behavior(정의되지 않은 동작)으로, 컴파일러마다 실행 결과가 달라지게 됩니다.
정의되지 않은 동작은, C++ 표준에서 정해지지 않았다는 뜻입니다.

자세한 설명은
http://stackoverflow.com/questions/4176328/undefined-behavior-and-sequence-points/4183735
여기에 나와 있습니다만 복잡하므로 일단 패스하고 결론만 설명하자면

++와 --의 실행 시점이 세미콜론(;)으로 구분되는 줄 아는 사람, 그리고 그런 식으로 설명하는 사람이 있는데
결론만 말하자면 '틀렸습니다.'

어쩌구 a++ 저쩌구; 는
어쩌구 a 저쩌구;
a = a + 1;
과 같다.
어쩌구 ++a 저쩌구; 는
a = a + 1;
어쩌구 a 저쩌구;
와 같다.
이 설명은 틀렸습니다.

a++은 a를 그 문장에서 사용하고, 그 문장의 계산이 끝나면 a를 1 증가시킨다.
++a은 a를 1 증가시키고, 그 값을 해당 문장에서 사용한다.
이 설명도 틀렸습니다.

http://stackoverflow.com/questions/4445706/post-increment-and-pre-increment-concept

a++는 a를 1 증가시키고 a에 원래 있던 값을 사용합니다.
네? a를 증가시키기 전에 a를 먼저 사용하는 거 아닌가요?
아닙니다. a를 먼저 증가시킬지 a의 원래 값을 사용하는 게 먼저일지는 C++ 표준에서 정의되어 있지 않습니다.

++a는 a를 1 증가시키고 a의 메모리 위치에 있는 값을 사용합니다.
이 정의대로라면, a에 1이 들어 있을 때 ++a + ++a는 (2 + 3)이 될지 (3 + 3)이 될지 (3 + 2)가 될지 정해져 있지 않죠.
a의 메모리 위치에 있는 값이 읽힐 때 다른 ++ 연산자가 이미 처리되었는지 아닌지 모르는 데다가
a + b + c의 연산은 + 연산자의 정의에 따라 앞에서부터 한다고 할 때,
이건 (a + b) + c를 뜻합니다. 그러니까 a와 b의 순서는 정해져 있지 않죠.
a가 어떤 명령을 실행시키는 int형 함수이고 b도 마찬가지일 때
a, b, c 순서로 처리할지
b, a, c 순서로 처리할지
모른다는 거죠.
1597 2014-07-02 20:43:13 0
안드로이드 개발하시는 분 있나요? 리소스 불러오기에 대해서 질문있어요 [새창]
2014/07/02 20:24:14
AsyncTask 클래스를 쓰면 됩니다.
오류날 때 콜스택 좀 같이 써 주세요.
1596 2014-06-24 16:50:09 0
안드로이드에서 리스너 구현할때 궁금한게 있습니다. [새창]
2014/06/24 15:47:51
1 XML에서 연결하면 Activity에선 잘 동작하지만 Fragment에선 제대로 동작하지 않더군요.
1595 2014-06-24 15:04:25 0
자바스크립트 {}와 {};는 어떤 경우에 쓰이나요? [새창]
2014/06/24 14:23:42
function 어쩌구저쩌구 {
...
}
는 함수를 그냥 정의하는 거고
어쩌구저쩌구 = function() {
...
};
는 Anonymous function을 어쩌구저쩌구에 대입하는 거고
1594 2014-06-24 13:22:18 0
메모장으로 html이미지문제 [새창]
2014/06/24 10:47:43
파일 이름이 한글로 되어 있을 때 설정 변경 없이 옛 브라우저에서는 안 나오는 경우가 있습니다.
파일 이름을 영어로 바꿔 보세요.
1593 2014-06-24 13:20:48 0
베이직이라는게 대체 뭘까요...... [새창]
2014/06/24 12:18:54
Basic은 10년쯤 전부터 일반 프로그램 개발에는 전혀 이용되지 않고 있습니다.
Visual Basic은 꽤 사용되지만 Visual Basic은 그냥 Basic과는 다르죠.
1592 2014-06-20 19:28:09 0
[새창]
왜 return을 안 하죠?
1591 2014-06-20 16:17:00 0
흑마 이해가 안되는점 [새창]
2014/06/20 14:15:05
1 나이사가 효과를 쓰면 좋다고요?
보통은 그렇지만 필드에 내 거인 하나 달랑 있는데 나이사 내려고 하면
내 거인 죽여야지 나이사 낼 수 있습니다.

무클라 효과가 안 좋은 건데 상대편 핸드에 카드가 8장 이상 있으면 무클라 못 내야 맞는 게 되는 건가요?
< 이전페이지 다음페이지 >
< 31 32 33 34 35 >
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호