#include<stdio.h>
void main()
{
int *c=12345;
printf("dec:%d hex:%x", c ,&c); // (1)
}
라인 (1) 8af123
분명히 따라 임의의 기계 인 주소C는 포인터에서 int를 해석하고 char 포인터와 다른 점은 무엇입니까?
dec:12345 hex:8af123
를 출력한다.
나는 분명히printf("dec:%d", *c); // (1)
실패에 넣어합니다.
그래서 제 질문은 이론적 개념 당과 같습니다
*c
는해야 값12345
를 보유하고 있지만이 아니다. 왜?
그리고이 코드에서 :
#include<stdio.h>
void main()
{
char *c='a';
printf("address store in c:%d value point by c:%c address of c:%x", c,*c ,&c); //Focus line
}
출력은 다음과 같습니다
adderess store in c:9105699 value point by c:a address of c:8af564
- 이 왜
c
대신 'A'*c
에 저장됩니다?
gcc 컴파일러 4.4.3을 사용하고 있습니다.
'str'은 무엇입니까? 'c'라는 뜻이야? – SLaks
'str'은 무엇입니까? 나는 그런 선언을 여기서 보지 못한다. "C"와 관련이있을 수 있는가? –
'int * c = 12345;'할 수 없다, 포인터'c '에 메모리를 할당하지 않았다. – Math