2017. 6. 2. 12:54ㆍ프로그래밍(이전)/C
파일 입출력 이론
FILE *f = fopen("경로밑 파일이름","r"읽기 "w"덮어쓰기 "a"이어쓰기);
int a;
fscanf(f, "%d",&a); 파일 내용 불러오기
printf("%d",a);파일 내용 뽑기
fprintf(f, "131313"); 파일에 박기
fclose(f);선언한 파일의 메모리 할당이 풀림
동적할당 이론
#include <stdlib.h>
int *a = (int*)malloc(sizeof(int)*5//여기 안에 메모리양 설정);
printf("%d",sizeof(int));자료형의 메모리 바이트
free(a);a라는 변수에 선언한 메모리가 다 날라감
파일 입출력 실습
#include <stdio.h>
int main()
{
FILE *f1 = fopen("test1.txt","r");//읽기모드로 파일 열기
char a[500];//파일의 내용을 받아올 문자열 선언
fscanf(f1,"%s",a);//파일의 내용을 a라는 문자열에 스캔해 넣음
printf("%s\n",a);//내용 출력
fclose(f1);//메모리 할당 풀기
FILE *f2 = fopen("test1.txt","w");//다시쓰기 모드로 파일 열기
fprintf(f2,"유키호는 여신 인겁니다!");//파일을 문자열 내용으로 다시쓰기
fclose(f2);//메모리 할당 풀기
FILE *f3 = fopen("test1.txt","a");//이어쓰기 모드로 파일 열기
fprintf(f3,"또 란코 인겁니다!");//파일을 문자열 내용으로 이어쓰기
fclose(f3);//메모리 할당 풀기
}
<<경로
<<실행 전<<실행후 text1.txt
“유키호입니다만?” -> 다시쓰기로 삭제 ->”유키호는 여신 인겁니다!\n” 기록
-> “란코도 인겁니다!” 이어쓰기로 뒤에 기록
<<실행된 콘솔
동적할당 실습
#include <stdio.h>
#include <stdlib.h> //헤더파일 불러오기
typedef struct
{
char *a;
int *n;
} Person; //구조체 선언
int main(void)
{
Person p; //p라는 구조체 하나 생성
p.a = (char*)malloc(sizeof(char)*5);//동적할당으로 메모리 지정
p.n = (int*)malloc(sizeof(int)*2);//동적할당으로 메모리 지정
printf("이름 입력 : ");
scanf("%s",p.a);//이름 입력
for(int a = 0;a<2;a++)
{
if(a == 0)
{
printf("나이 입력 : ");
}else if(a == 1)
{
printf("키 입력 : ");
}
scanf("%d",&p.n[a]);//정수 2개 입력
}
printf("이름 출력 : %s\n",p.a);//이름 출력
for(int a = 0;a<2;a++)
{
if(a == 0)
{
printf("나이 출력 : ");
}else if(a == 1)
{
printf("키 출력 : ");
}
printf("%3d\n",p.n[a]); //정수2개 출력
}
return 0;
}
<<실행 결과
'프로그래밍(이전) > C' 카테고리의 다른 글
블가다의 C언어 강좌) 매크로, 인라인 함수, typedef, 구조체 포인터에 대한 실습. (0) | 2017.05.20 |
---|---|
블가다의 C언어 강좌) 구조체의 개념 밑 활용. (0) | 2017.05.20 |
블가다의 C언어 강좌) 육망성 만들기! (0) | 2017.05.15 |