Turbo-C
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
터보-C 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
Lua 게시판
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C/C++ Q/A
[1527] [질문] 포인터 printf 쪽만... T.T
라딘 [] 1757 읽음    2002-11-11 22:50
#include<stdio.h>

char *ptrc[]={"KOREA","CANADA","UNITED STATES OF AMERICA","FRANCE"};
char **st[]={ptrc+3,ptrc+2,ptrc+1,ptrc};
char ***stt=st;

void main()
{
    printf("%s\n",**++stt);
    printf("%s\n",*--*++stt+2);
    printf("%s\n",*stt[-2]+3);
    printf("%s\n",stt[-1][-2]+1);
}

위에꺼 돌려보면

united states of america 
rea
nce
orea

이렇게 나오거든요...

여러가지 해봤는데...--;
일단 printf 를 1,2,3,4 로하면...
1번이 빠지면 에러가 뜨고 결과값에 2번답만 나오는거 같은데 캐나다가 나옵니다.
2번이 빠지면 에러가 뜹니다. 1번결과만 나오고요.
3번이 빠지면 에러 않뜨고 1,2,4번 결과가 맞게 나옵니다.
4번 역시 4번만 않나오고 1,2,3번 결과는 맞게 나옵니다.

무슨차이인가요?

그리고 printf 알려주세요...T.T
**++stt
*--*++stt+2
*stt[-2]+3
stt[-1][-2]+1



그리고 1번에서 * 한개가 모자르 에러 2번에서 -- 가 없으면 캐나다가 2자리 빼고 나오고요
3번은[-2] 안에 숫자 바꾸면 안뜨고 +2 하면 공백으로 +1하면 한국이 3자리 빼고 나오고 0 역시
한국이 3자리 빼고나오고 -1 하면 미국이 앞에3자리빼고 나오고 -2는 원래값인 프랑스 3자리 빼고
나오는데... 캐나다는 않나오더군요. 4번은 앞에 [-1]을 -2로 하면 캐나다 1자리뺀수 0,+1 은 에러 +2는 공백 으로 나오는군요. 뒤에 [-2]를 -1은 캐나다 1자리빼고 0은 미국 1자리빼고 +1은 프랑스
1자리뺀수가 나오네요 [-1][-2] 이게 없으면 0*B 가 ??? 나오고 [+1][+2] 로하면 미국이 1자리 뺀수 나오네요...
ㅡㅡ; 이케 하다 보니깐 먼가 생각이 난듯하면서 짜증이 나구 T.T 뒤죽박죽 되서요...
근데 확실히 쓰면서 하니깐 좋긴 좋은것 같네요 ^^

printf에 걸린
**++stt
*--*++stt+2
*stt[-2]+3
stt[-1][-2]+1

이것좀 알려주세요

+ -

관련 글 리스트
1527 [질문] 포인터 printf 쪽만... T.T 라딘 1757 2002/11/11
1533     Re: 고마워요 T.T 생각한거랑 --; 완전... 달랐어요 T.T 라딘 1371 2002/11/12
1532     Re:[질문] 포인터 printf 쪽만... T.T laSuna 1457 2002/11/12
1545         Re:Re:[질문] 다시...요...죄송 라딘 1364 2002/11/14
1555             Re:Re:Re:[질문] 다시...요...죄송 laSuna 1450 2002/11/15
1570                 Re: 그렇쿤요... 고맙습니다. 라딘 1363 2002/11/15
1531     어렵네요. 이영우 1455 2002/11/12
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.