배열을 넘겨 받아서 sizeof() 함수로 배열 사이즈를 알려고 하는데 조언좀 부탁합니다.
별솔
2023.04.01
#include stdio.hchar CMD1[]={1,2,3,4,5,6,7,8,9,0};
void rx0(char c[])
{
printf(%d \n\r,sizeof(c));
}
main()
{
printf(%d \n\r,sizeof(CMD1));
rx0(CMD1);
}
실행결과
10
4CMD1[] 배열의 사이즈를 rx0()함수로 넘겨 받아서 배열을 사이즈를 구할려고 합니다.
실행 결과가 10 10 이 나올줄 알았는데 실행결과 처럼 10 4 가 나오네요.
배열을 넘겨 봤는것이 틀렸는거 같은데 조언좀 부탁합니다.
-
소아
프리스타 님 답변 감사합니다. 배열크기도 함께 보내야만 되는군요.
-
이솔
매개변수 char c[] 는 char* c와 같습니다. 매개변수에서만 선언할수잇는 문법이죠 포인터를 넘겨줬기때문에
sizeof()함수 호출시 포인터자료형의 크기가 출력되는겁니다. 포인터로 전달해서 해당배열의 크기를 알수는 없습니다. 배열인자에 배열의 크기를 같이 넘겨줘야되죠
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2696372 | %=open_main%, %=open_sub% 가 뭘까요? (9) | 행복녀 | 2025-05-29 |
2696347 | 콘솔 프로그램 질문 | 상큼한캔디 | 2025-05-28 |
2696320 | c언어 scanf 함수를 이요해 문자열 입력 받을 시 질문 있습니다. | 슬아라 | 2025-05-28 |
2696292 | 익스플로러9이상에서만 이상한 보더가 보이는데 삭제할수 있나요? | 망고 | 2025-05-28 |
2696263 | 프로그래밍 공부시작 질문 (6) | 진이 | 2025-05-28 |
2696206 | SK2의 플래시를 밴치마킹하려고하는데요.. (1) | 비내리던날 | 2025-05-27 |
2696179 | ie7에서 사라지지가 않네요. (2) | 빛길 | 2025-05-27 |
2696150 | div에 스크롤 생기게 하려면... (2) | 에드가 | 2025-05-27 |
2696123 | 자료구조론 공부중인데 | 김자영 | 2025-05-26 |
2696094 | exe 파일 | 제철 | 2025-05-26 |
2696043 | 제이쿼리 .scroll() 관련 질문드립니다 | 이거이름임 | 2025-05-26 |
2695984 | 마크업상으로 하단에 있으나 우선적으로 이미지파일을 다운로드받는 방법 (1) | 들꿈 | 2025-05-25 |
2695934 | tr 속성값 (9) | 새 | 2025-05-25 |
2695905 | ASP로 개발됐을 때 css가 달라져요 ㅠㅠ (4) | 슬아라 | 2025-05-24 |
2695878 | form을 이용한 다른 페이지로 넘기는 방법을 알려주세요 (1) | 핫파랑 | 2025-05-24 |
2695844 | 저기 암호화 및 복호화 프로그램.. 만들어볼려는대 (2) | 한빛 | 2025-05-24 |
2695814 | [질문] PDA에서 애플릿이 가능한가요? (1) | 봄시내 | 2025-05-24 |
2695785 | 웹 설정 도와줄분 | 화이트캣 | 2025-05-23 |
2695730 | 갑자기 기억이 안나는데 accesskey 속성.. | 빛나라 | 2025-05-23 |
2695702 | [질문] Java 버전 차이에 의한 오류?!! (2) | 검사 | 2025-05-23 |