고수님들 배열과 함수, 포인터에 대해서 궁금합니다.
글쓴이: ins878 / 작성시간: 금, 2004/11/19 - 2:09오전
안녕하세요~
프로그래밍을 열심히 공부하는 학생입니다. 다름이아니라, 문자열을 함수로 통해서 보낼때, 문자열의 크기를 알 수 있는 방법이 없은가요?
#include <stdio.h>
void aaa(char *get)
{
int size;
int str = strlen(get);
size = sizeof(str);
printf("%d\n",str);
printf("%d\n",size);
}
int main()
{
char a[10] = "abcde";
printf("%d\n",sizeof(a));
aaa(a);
return 0;
}
위 소스코드에서요.. 배열의 크기를 10으로 잡아서 함수로 넘겨주면, 함수에서 배열의 크기를 알 수 있는 방법이 없나요. 고수님들 부탁드립니다.
Forums:
저는 #define 을 사용합니다.[code:1]#define
저는 #define 을 사용합니다.
삽질의 대마왕...
aaa()로 배열의 크기도 넘기는 방법을 쓰시면 안되나요?사용할 수
aaa()로 배열의 크기도 넘기는 방법을 쓰시면 안되나요?
사용할 수 있는 최대 버퍼의 크기라는 개념으로 넘겨도 의미 상으로는 크게 문제가 없는데...
c는 high 레벨 언어가 아닙니다.무척 low하죠많은걸 기대하심
c는 high 레벨 언어가 아닙니다.
무척 low하죠
많은걸 기대하심 다치실듯.. 농담입니다 :D
가능합니다.매크로 사용하시면됩니다. define Aaa( x ) a
가능합니다.
매크로 사용하시면됩니다. define Aaa( x ) aaa( x, sizeof(x))
그러나 주의할점은 배열이 나닌경우도 고려해야겠지요
C를 고급언어처럼 사용하면 웬만한건 됩니다.
----------------------------------------------------------------------------
댓글 달기