출처 : http://www.joinc.co.kr/modules/moniwiki/wiki.php/Site/C/Documents/CprogramingForLinuxEnv/Ch11_Structure

#include <stdio.h>
#include <string.h>

struct userinfo
{
char name[20];
int age;
};

int main(int argc, char **argv)
{
int age;
int i;
char buf[40];
struct userinfo myfriend[5];

for (i = 0; i < 5; i++)
{
printf("Name : ");
fgets(buf, 19, stdin);
buf[strlen(buf)-1] = '\0'; // <--- 1
sprintf(myfriend[i].name, "%s", buf);

printf("Age : ");
fgets(buf, 19, stdin);
age = atoi(buf);
myfriend[i].age = age;
}

printf("=======================\n");
for (i = 0; i < 5; i++)
{
printf("%12s : %d\n", myfriend[i].name, myfriend[i].age);
}
}
fgets(3)은 키보드로 부터 문자열을 입력받기 위해서 사용하는 함수다. 1은 키보드로 입력된 개행문자를 제거하기 위해서 사용했다.

'It's my study ^^ 과연' 카테고리의 다른 글

open  (0) 2007.12.15
Library 만드는 법  (0) 2007.12.14
이중 포인터  (0) 2007.12.13
대입연산자  (0) 2007.12.12
Primitive Data Types  (0) 2007.12.10
대입연산자는 같은 타입에 대해서만 허용되는 연산자이기 때문에, 배열에 문자열을 대입하는건 C 문법에 어긋나기 때문이다. 결국 문자열을 처리하기 위해서는 별도의 함수를 만들어서 사용하는 수 밖에 없다. 다행히 C 는 표준 라이브러리 형식으로 몇개의 유용한 문자열 처리 함수를 제공한다. strcat(3), strcpy(3)와 같은 함수가 문자열 처리를 위한 대표적인 함수다. 다음은 strcpy 함수를 이용해서 문자열을 복사한 프로그램이다.
#include <stdio.h> 

int main()
{
char hello[12];
strcpy(hello,"hello world\0");
printf("%s\n", hello);
}

'It's my study ^^ 과연' 카테고리의 다른 글

구조체(Struct)  (0) 2007.12.13
이중 포인터  (0) 2007.12.13
Primitive Data Types  (0) 2007.12.10
C/C++ Language  (0) 2007.12.06
Comback of Se Ri Pak  (0) 2007.08.17

+ Recent posts