int *ptr = 125; 가 틀린 이유에 대해 이의가 있습니다.
한
질문 제목 : int *ptr = 125; 가 틀린 이유에 대해 이의가 있습니다.다른 우선 선언을 고려하지 않고 int *ptr = 125; 만 보았을 때 틀린 이유가 있나요?질문 내용 :
일반적으로
#include stdint.h
int main(void)
{
int num=10; // 이와 같이 이게 있고,
int *ptr=# // 이렇게 포인터 변수 ptr에 num의 주소를 전달해주는데요
...
}
그렇지만 아래와 같이 선언했을 때, 질문이 있습니다.
int main(void)
{
int *ptr = 125;
*ptr = 10;
...
}
선언과 동시에 초기값 설정할 떈,
int *ptr = &변수명;
이렇게 한다는 걸 알고 있습니다.
문제는
int *ptr = &변수명; 에서 &변수명 부분~!
곧
int *ptr = 주소 라고 볼 수가 있습니다.
주소는 당연히 상수일테구요.
그래서 고로, int *ptr = 125; 라고 해서
정말 잘 쓴거라고 볼 수가 있습니다.
물론 일반적으로 기술 한 것이 아닌 것은 알고 있습니다.
하지만 125라는 번지의 주소로 가서 그 안에 있는 값을 충분히 참고를 할 수가 있겠죠.
거기에 변수를 정한 것이 아니기에 그 변수명은 모르지만,
이 사실 , 그 자체만 봐서는 전혀 문제가 없다고 볼 수 있는
int *ptr = 125 가 아닐까 싶은데,
잘못생각하고 있는건가요, 사실상 이 표현만 본다면 무리가 없는 건가요?
-
마중물
*ptr은 int이든, char이든 double이든 4바이트를 가지는 주소를 저장하는 포인터 변수입니다.
주소만 저장이 가능하다고 생각하시면 편합니다. -
미즈
넵, 답글 감사합니다 ^^
-
이룩
문법적으로는 문제가 없지만.. 런타임 에러 99%에요.ㅎ
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2676534 | 포인터 배열 질문이요~ | 회사원 | 2024-11-27 |
2676506 | 미분값 구하기 | 가시 | 2024-11-27 |
2676474 | 함수 수행시간 측정에 대해서 질문 할께요 | 핑크빛애교 | 2024-11-27 |
2676443 | 이상해요!! (2) | 다온 | 2024-11-27 |
2676415 | scanf 함수 | Creator | 2024-11-26 |
2676357 | 질문있어요..ㅜㅜ (1) | 일진누나 | 2024-11-26 |
2676326 | exit문으로 프로그램 종료가 되지 않습니다. (4) | 달달한캔디 | 2024-11-26 |
2676298 | 코드 해석좀 부탁 드려요 | 남 | 2024-11-25 |
2676182 | 숫자 순서대로 배열하는법 | 권뉴 | 2024-11-24 |
2676152 | 기본적인거 하나 질문드립니다. | 개미 | 2024-11-24 |
2676124 | 함수선언관련 질문이에요~...털썩..수정완료 (2) | 가지 | 2024-11-24 |
2676092 | C언어 책 (2) | 아서 | 2024-11-24 |
2676065 | 웹사이트 또는 메신저 등에서 원하는 텍스트를 검사하는방법?? (1) | 모든 | 2024-11-23 |
2676033 | 배열 기초연습중 발생하는 에러 ㅠㅜ... | Creative | 2024-11-23 |
2676005 | keybd_event 게임 제어 | 영글 | 2024-11-23 |
2675900 | 진짜기본적인질문 | 글길 | 2024-11-22 |
2675845 | 수정좀해주세요ㅠㅠㅠ | 해골 | 2024-11-21 |
2675797 | 병합 정렬 소스 코드 질문입니다. (2) | 도래솔 | 2024-11-21 |
2675771 | 큐의 활용이 정확히 어떻게 되죠?? | 해긴 | 2024-11-21 |
2675745 | 도서관리 프로그램 질문이요 | 도리도리 | 2024-11-20 |