사실 이 부분은 크게 중요하진 않지만 언제 어떻게 쓰일지 모르는게 배열과 문자열인것 같다.
특별한 건 없고 포인터 변수를 사용하여 문자열을 저장하는 것과,
strlen을 사용하지 않고, 배열의 사이즈를 파악, 생성 하는 것과
간단한 출력 방법을 코딩하였다.
#include <stdio.h>
void main()
{
char t1[] = "Test1";
char t2[] = "Test2";
char t3[] = "test3";
char *str[3] = { t1, t2, t3 };
char t4[] = {"Hello World!"};
const int size = sizeof(t4);
char t5[size];
printf( "%s\n", *str );
printf( "%s\n", (*str)+2 );
printf( "%s\n", str[1] );
for( int i=0; i<size; i++ )
{
t5[i] = t4[i];
}
printf( "%s\n", t5 );
}
사실 str___과 같은 함수를 쓰면 쉽게 해결 할 수 있는 것이기도 하지만
const와 sizeof를 사용하여 초기에 배열을 설정해 줄 수 있다는 장점이 있다.(물론 실행중에 변경을 할려면 결국 동적할당을 해야겠지만)
const를 쓰지 않으면 배열을 생성 할 수 없는데,
배열을 초기화 하기 위해서는 상수화된 숫자가 필요 하기 때문이다.
'프로그래밍 > C언어' 카테고리의 다른 글
2차원 배열 동적 할당 (0) | 2010.03.09 |
---|---|
가변 인수 (0) | 2010.03.08 |
재귀 호출 (0) | 2010.03.08 |
bit연산자 - & | ^ << >> (3) (0) | 2010.03.08 |
bit연산자 - & | ^ << >> (2) (0) | 2010.03.08 |