코드일부생략하고
int a=10;
int *arr[1]={&a};
printf(\"%d\", *arr[0])
--------------------
여기서는 배열인데 *붙이잖아염...;;
#include <stdio.h>
int main(void)
{
char* arr[1]={\"asdf\"};
printf(\"%s\", arr[0]);
return 0;
}
이것도 arr[0]에다가 \"asdf\"의 주소값반환하는거니까
printf(\"%s\", *arr[0]);
이렇게해야될꺼같은디.........
젭알도와주세염 ㅠㅠ
arr의 타입은 char *의 배열이고 첫번째 원소만 가져오면 문자열(char *)이 됩니다 고갱님
그러니까 겅부 다시하고 오라고요..이렇게 물어볼 필요없이 지금 당장 책 한번만 펴보면
왜 틀렸는지 알거임
책봣는뎅 모르겠으니까 질문하졍 ㅠㅠ
일단 하나 질문. char* arr[1]={\"asdf\"}; 이게 왜 틀렸는지 몰라요?
그거 틀린거에요??;; 안틀렷는뎅;;
이봐 자네 그러지 말고 파이썬 배워보겠나?
아..연사자 붙어있었구나...ㅈㅅ
배열이라서 그래요;;
혹시 scanf로 입력받을때 문자는 왜 앞에 참조연산자 안붙이는지 이유 모르죠? 그거 알면 저것도 알아요
같은 패턴을 가지고 비교해야지... 이러면 쓰냐?
http://codepad.org/ApClWf10
이래서 초보들한테는 c 가르치면 안된다니까
고수 c 형
http://gall.dcinside.com/list.php?id=programming&no=253051&page=1&bbs=
이글 답변 점 ㅠㅠ
문자는 변수이름이 주소값이니까 참조연산자 안붙는거 아는데.. ㅠㅠ
내글 안보냐 글쓴이 개객끼야
배열도 첫번째 인수 즉 arr 이나 arr[0] 쓰면 주소값 가르키는거라 그래요..
이미 주소값 가르키고 있는데 거기다가 또 & 붙여버릴수는 없죠
c님 봤어염... 근데 모르겠어염..ㅠㅠ
arr[0]이 주소값이니까 문자열을 출력할려면 *arr[0]이라캐야 맞는거아니에염?? ㅠㅠ 미치겟네 ㅠㅠ
문자열 출력할라면 주소를 써야된다 안했나 이 문디자슥아ㅡㅡ arr[0]가 주소자나
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 아 개웃겨
아맞다. ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 아 해결완료 감사요