저기. 포인트와 배열관계에서.. 질문좀..
글쓴이: min2to / 작성시간: 토, 2006/01/21 - 2:13오전
#include <stdio.h>
int main (void)
{
int a[5]={0,1,2,3,4};
printf("%d, %d ,a[0], a[1]); //배열요소 출력
printf("%d, %d , &a[0], &a[1]);// 배열요소의 주소 출력
printf("배열 이름: %d ,a); //배열 이름 출력
return 0;
}
문제가 이건데여... 흠..
제 예상으로는..
0,1
10진수의..정수 0,1
1,2,3,4,5
이런식으러 나올줄 알았는데..
마지막께..10진수의 0의 값이 나오더라구여..
막.. 보고 있는데.. 이해가 않가네여...
흠.. 제가 기초포인터 지식에서.. 이해가 덜되었다는 증거인가..
Forums:
질문이 뒤숭뒤숭하고 성의가 없으니... 답변달기도 싫군여.실행결과
질문이 뒤숭뒤숭하고 성의가 없으니... 답변달기도 싫군여.
실행결과 긁어붙이고 뭐가 예상이랑 틀린건지 제대로 적으십시오.
Re: 저기. 포인트와 배열관계에서.. 질문좀..
모르는건 물어보라구 엄마 아빠가 알려주셧습니다
고수님,선배님들 도와주십쇼 독학하는 학생입니다
[code:1]#include <stdio.h> int
printf("배열 이름: %d" ,a); //배열 이름 출력
배열 이름이라는게 정확히 무슨 의미인지 모르겠군요..
여기서 a는 배열 이름을 가르키는 변수가 아니라
array를 가르키고 있습니다.
고로 a하고 &a[0]는 같다고 보시면 되고..
당연히 결과 값도
&a[0]하고 a하고 같은 값이 나옵니다.
다 덤벼! 다 받아줄께!!
[quote]여기서 a는 배열 이름을 가르키는 변수가 아니라array
array가 머져??.. ... 잘몰라서..
모르는건 물어보라구 엄마 아빠가 알려주셧습니다
고수님,선배님들 도와주십쇼 독학하는 학생입니다
[quote]array가 머져??.. ... 잘몰라서..[/quote]
배열입니다.
다 덤벼! 다 받아줄께!!
....영어를 몰라서.. 하하.. ^^;;;;;;;;;;;;;;
하하하!!! .... ;;;;;
이해가 않되여.. 흑흑..
죄송하지만.. 이 문장이// ㅠ/ㅠ
모르는건 물어보라구 엄마 아빠가 알려주셧습니다
고수님,선배님들 도와주십쇼 독학하는 학생입니다
Re: ....영어를 몰라서.. 하하.. ^^;;;;;;;;;;;;;;
배열 이름은 "a"로 소스 코드 내에서만 의미가 있습니다. 배열 이름을 출력한다는 표현이 오히려 더 이해가 안됩니다.
a는 배열 '이름'을 가르키는게 아니라 배열 '자체'를 가르킨다는 뜻입니다. 배열 자체란 배열의 시작 주소를 의미한다고 보시면 됩니다. 따라서 (배열 시작 주소) a와 (배열 첫번째 요소의 주소) &a[0]가 같게 나옵니다.
Re: 저기. 포인트와 배열관계에서.. 질문좀..
사소한 태클 하나.
이거 정말로 돌아가긴 하는 걸까요? -_- 큰따옴표가 하나씩 없어 보입니다만...
진짜 답변
뭐, 포인터 정도는 어느 정도 이해를 하시고 계시다는 가정 하에
대충 이런 겁니다.
a가 마치 배열의 첫 원소를 가리키는 상수 포인터처럼 동작합니다.
따라서 이게 가능하죠.
int a[5]={0,1,2,3,4}는 메모리에 저장될 때 4 byt
int a[5]={0,1,2,3,4}
는 메모리에 저장될 때 4 byte x5 = 20 byte로 저장되고
저장된 메모리의 선두 번지를
a가 포인터하게됩니다..
그럼.. a 는 포인터 변수가 된다는 것인데..
..저도 자세히는 모르겠네요....
Re: ....영어를 몰라서.. 하하.. ^^;;;;;;;;;;;;;;
.. 감사합니다.. 근데.. 햇갈리네여.. 흑흑..
전부다 저런 방식으로 나오나여??... 제가 본 [배열]파트에서..
공부한거랑.. 많이 틀린느낌을 받아서..... 여하튼.. 정말 감사드립니다..
좋은하루 보내세여.. ~~
모르는건 물어보라구 엄마 아빠가 알려주셧습니다
고수님,선배님들 도와주십쇼 독학하는 학생입니다
Re: 저기. 포인트와 배열관계에서.. 질문좀..
가만히 생각해보니,
데체 이 문장에서 어떤 값이 출력되길 기대하셨는지 정말 궁금해지는군요. :?
Re: 저기. 포인트와 배열관계에서.. 질문좀..
열혈강의 C에서.. 이런값이 출력되더라구여..
포인터와 배열.. 에서
1245036
모르는건 물어보라구 엄마 아빠가 알려주셧습니다
고수님,선배님들 도와주십쇼 독학하는 학생입니다
Re: 저기. 포인트와 배열관계에서.. 질문좀..
위에서도 설명드렸지만, 그 값이 바로 a라는 배열의 가장 첫 원소의 주소입니다. -_-;
아마 그 책을 보면 &a[0]도 1245036이라고 쓰여 있을 겁니다.
더불어, 항상 같은 위치에 변수가 할당될 리 없으므로 그 값은 실행할 때마다 달라집니다.
쌩뚱맞지만. .저것도 포인터와 연관되어있는건가여?
int main (void)
{
int a[5]={0,1,2,3,4}; ///<-이거뜻이여 int* a[5]={0,1,2,3,4}; 마찬가지져?
포인터 선언..
printf("%d, %d ,a[0], a[1]);
printf("%d, %d , &a[0], &a[1]); /// 이건 반환.. 0,1 포인터..
printf("배열 이름: %d ,a); // 이건 a[0]을 가진 값..
이렇게 이해하면.. 되겟져??..!!
정말.. 죄송합니다.. 포인터 한지.. 3일정도 되었는데.. 맨날
그자리에 머물러 있어서.. 질문을.. 흑흑..
모르는건 물어보라구 엄마 아빠가 알려주셧습니다
고수님,선배님들 도와주십쇼 독학하는 학생입니다
[code:1]#include <stdio.h>int
제 결과:
Re: 쌩뚱맞지만. .저것도 포인터와 연관되어있는건가여?
아닙니다. int *a[5]면 포인터의 배열이 돼버려요.
아뇨. a[0]을 가진 값이라는 것이 뭔가요..?
저는 포인터 이해하기 위해 몇년 가까이 걸렸습니다. 차근차근 봐보세요.
Re: 쌩뚱맞지만. .저것도 포인터와 연관되어있는건가여?
int a[5] : int 배열
int* a[5] : int 포인터 배열
마찬가지가 아니죠.
정도가 되야 마찬가지가 되겠죠.
Re: 쌩뚱맞지만. .저것도 포인터와 연관되어있는건가여?
그럼..여..
음. .웃긴 질문 같지만.. ..
제가 지금.. 대충 아는게.. 반복문까지는 알거든여..
그럼 이시점에서.. 포인터로만 나가는 책을 구입해서 보는게
한가지의 지름길이 될까여?.... 아님 그냥.. 포인터 부분 넘긴다음에..
이해하고.. 책을.. 구입하는게.. 날까여..? ..
[구입해도 노력 여부겟지만..]
현재로는 포인터부분이. .막막해서.. 배열하고.. 흠..
모르는건 물어보라구 엄마 아빠가 알려주셧습니다
고수님,선배님들 도와주십쇼 독학하는 학생입니다
Re: 쌩뚱맞지만. .저것도 포인터와 연관되어있는건가여?
저한테 하신 질문은 아니지만..
저는 같은 책을 3번 반복해서 읽었습니다. 처음에는 반 정도 이해했고, 두번째는 포인터 빼고 이해했고, 세번 읽으니 어느 정도 알겠더군요.
쉬운 책을 읽으면서 최대한 이해하려고 노력해보세요. 그림도 그려보고 코드도 따라 짜 보고.
감이 잡히면 좋은 책을 사서 두고두고 읽으시고요.
감사합니다~
조언 감사합니다.~~
한번!! 계속 읽어보겟습니다.. !!
모르는건 물어보라구 엄마 아빠가 알려주셧습니다
고수님,선배님들 도와주십쇼 독학하는 학생입니다
하하하.. 열심히 하시는 군요..열혈학생 등장인가...
하하하.. 열심히 하시는 군요..
열혈학생 등장인가...
ㅡ_ㅡ;
Re: 저기. 포인트와 배열관계에서.. 질문좀..
모르는건 물어보라구 엄마 아빠가 알려주셧습니다
고수님,선배님들 도와주십쇼 독학하는 학생입니다
간단히 c에서 배열이름은 배열에 대한 포인터로 사용됨
간단히 c에서 배열이름은 배열에 대한 포인터로 사용됨
흑.. 보다가.. 지침.. 포인터.. 흑흑..
그냥.. 책 한권 구입해서.. 봐야될꺼 같네여
그냥 건너뗘서.. 볼려니.. 찝찝하고... 계속보니.. 머리만 아프고...흑흑..
[[[[열혈강의 포인터 책!!!]]]]]
흑흑... 혹시.. 읽어보신분 계시나여?.. 아님.. 딴 포인터... 책 추천좀..
해주십시요.. 선배님들..!! 부탁드립니다!!..
베스터터터터 셀러급..정도.? ㅎ;;;;;;~~~~
아직.. 제가 초초초초초보라..
영어로된 문서는 말고여.. 흐흐...(죄송합니다.. __;;)
가난한 백수의 .. 생활..... 또.. 못난.... 자식. .부모님한테..
3만언을. .타써야 되다니...
불효자는 웁니다.. 엉엉..~~;;;;;;
모르는건 물어보라구 엄마 아빠가 알려주셧습니다
고수님,선배님들 도와주십쇼 독학하는 학생입니다
음.. 지금 어떤 책을 보시는 지 모르겠지만.. 그 책에도 포인터와 배열
음.. 지금 어떤 책을 보시는 지 모르겠지만.. 그 책에도 포인터와 배열을 관계가 나와있지 않나요? C책이면 포인터 얘기가 당연히 있을 것이고, 포인터 얘기가 있으면 배열과 포인터 얘기도 있을텐데...
그냥 그 책을 다시 한번 찬찬히 읽어보시고 인터넷에서 관련 문서를 뒤지시는게 나을 듯. ^^
댓글 달기