printf scanf 특수문자 도표

* ESC 문자열과 의미
 

ESC 문자열

ASCII CODE

의 미

n

10

new line : 새로운 줄의 시작

t

9

tab : 커서 또는 프린터 헤드를 tab 만큼 이동

b

8

backspace : 뒤로 한 칸 움직임

r

13

carriage return : 그 줄의 처음으로 이동

f

12

form feed : 프린터의 종이를 다음 페이지로 넘김

a

7

alert : 경고음

v

11

vertical tab

0

null character

\

92

, ‘, “, ?의 문자 상수 사용

39

34

?

63

* Printf()의 변환 문자와 변환 내용

변환 문자

변환 내용

인수 수형

%d

인수를 10진수로 변환

정수형

%o

인수를 8진수로 변환

정수형

%x

인수를 16진수로 변환

정수형

%u

인수를 부호 없는 10진수로 변환

정수형

%c

인수를 한 문자로 변환

정수형(문자형)

%s

인수에 따라 지시되는 문자열로 출력

문자형에 있어서의 포인터형

%f

인수를 float나 double로 받아

부동소수점형의 10진수로 변환 : [-] 00.000000

부동소수점형

%e

인수를 float나 double로 받아

부동소수점형의 10진수로 변환 : [-] 00.000000E [±]00

부동소수점형

%g

%e와 %f 중 변환 문자수가 적은 쪽의 변환 취함

부동소수점형

* Scanf()의 변환 문자와 변환 내용

변환 문자

변환 내용

인수 수형

%c

인수를 한 문자로 변환

정수형(문자형)

%d

인수를 10진수로 변환

정수형

%f

인수를 float형의 10진수로 변환

부동소수점형

%lf, %LF

인수를 double형의 10진수로 변환

부동소수점형

%s

인수에 따라 지시되는 문자열로 출력

문자형에 있어서의 포인터형

출처 : http://cuequedasse.tistory.com/6

time() 과 localtime()

리눅스에서 년, 월, 일, 시, 분, 초 로 나타내는 함수로

time, localtime 있다.

1장. localtime(3)

차례
1.1절. 사용법
1.2절. 설명
1.3절. 반환값
1.4절. 예제

1.1절. 사용법

#include <time.h>

struct tm *localtime(const time_t *timep);

1.2절. 설명

timep 를 입력받아서 유저 시스템의 time zone 에 맞도록
시간 값을 돌려준다. 시간 값은 tm 구조체에 들어간다.
tm 구조체는 다음과 같은 멤버 변수들을 포함한다.

struct tm
{
int tm_sec; /* 초 */
int tm_min; /* 분 */
int tm_hour; /* 시간 */
int tm_mday; /* 일/월 */
int tm_mon; /* 월 */
int tm_year; /* 년 */
int tm_wday; /* 일/주 */
int tm_yday; /* 일/년 */
int tm_isdst; /* 섬마타임 */
};

월은 0부터 시작한다. 그러므로 프로그램상에서 제대로 표현하려면 +1을
해주어야 한다. 또한 년의 경우에는 +1900 해주어야 한다.

아규먼트로 들어가는 timeptr 은 1970년 1월 1일 00:00:00 부터의
계산하고픈 때까지의 시간의 차이를 초로 환산한 값이다.


1.3절. 반환값

tm 구조체를 넘겨준다.


1.4절. 예제

#include <time.h>

#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>

void swaptime(time_t, char *);
int main()
{
char buffer[255];
time_t the_time;

// time 함수를 이용해서 현재 시간을 얻어온다.
time(&the_time);

memset(buffer, 0x00, 255);
swaptime(the_time, buffer);
printf("%sn", buffer);
}

void swaptime(time_t org_time, char *time_str)
{
struct tm *tm_ptr;
tm_ptr = localtime(&org_time);

sprintf(time_str, "%d-%d-%d %d:%d:%d", tm_ptr->tm_year+1900,
tm_ptr->tm_mon+1,
tm_ptr->tm_mday,
tm_ptr->tm_hour,
tm_ptr->tm_min,
tm_ptr->tm_sec);

}

위 프로그램을 컴파일한다음 실행시키면 다음과 같은 결과를 보여줄것이다.

[root@localhost test]# ./localtime
2002-8-23 18:18:32


출처 : http://www.joinc.co.kr/modules/moniwiki/wiki.php/man/3/localtime