Profile

youngsouk

youngsouk

프로그래밍 언어 복습

https://modoocode.com/231

 

씹어먹는 C 언어 시작하기

 

modoocode.com

이 사이트의 예제들을 눈으로 훏어보고 포인터를 활용하는 간단한 프로그램들을 만들어보면서 기억을 되살렸다.

또한 이전에 풀었던 해킹 문제 writeup 글들과 리눅스 라이브러리 코드 글들을 보면서 해킹 지식을 기억하려고 노력했다.

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

#define	BUF_SIZE	100

int main()
{
	FILE *fp = NULL;
	FILE *fp2 = NULL;
	int nbyte=0;
	char buf[BUF_SIZE]={0, };

	// file open
	fp = fopen("./proto.c","rb");
	if ( fp == NULL )
	{
		printf(" fopen() error \n");
		exit(0);
	}

	fp2 = fopen("./p.txt","wb");
	if ( fp2 == NULL )
	{
		printf(" fopen() error \n");
		exit(0);
	}


	// Read data from proto.c :  BUF_SIZE
	while(1) 
	{
		memset(&buf, 0, BUF_SIZE);
		// file read
		nbyte = fread(buf, 1, BUF_SIZE, fp);
		if ( nbyte <= 0 ){
		       	break;
		}
		// new file write
		fwrite(buf, 1, nbyte, fp2);
	}

	fclose(fp);
	fclose(fp2);
}

이 코드를 작성하면서 memset, scanf, FILE IO, socket 등에 대한 지식을 되살렸다.

이 코드 외에도 github에서 C언어로 짜여진 프로그램 분석을 열심히 했다.

'1인 1프로젝트' 카테고리의 다른 글

동작방식 설계  (0) 2021.04.26
구조체 설계  (0) 2021.04.20
환경구성  (0) 2021.03.23
프로그램 구조 및 언어 계획  (0) 2021.03.22
프로젝트 계획서 작성 완료  (0) 2021.03.15