Escape문자
특징:문자열내에서 다른 의미로 해석됩니다.
\=역슬래쉬
Escape문자 | 기능 |
\n | 줄바꿈 Enter의역할을 한다. |
\r | 줄의 처음으로 간다. |
\b | 한문자 왼쪽으로간다.(Back space) |
\t | Tab만큼 띄운다. |
\a | 소리를 낸다. |
\(특수문자) | 특수문자 출력 |
예제↓
1 2 3 4 5 6 7 8 9 | #include<stdio.h> int main(void){ printf("안녕하세요.\n"); printf("\tHello World\a\n"); printf("물음표:\?"); printf("음..\r"); printf("...\b"); return 0; } | cs |
결과:
안녕하세요.
Hello World(소리)
물음표:?..음..
이렇게됩니다.
서식문자
서식문자설명에 앞서 진수이라는것을 배워야합니다.
나아갈進셀數로 10진수는 10이되면 나아간다는뜻으로 11이됩니다.
10진수:1 2 3 4 5 6 7 8 9 10
8진수:1 2 3 4 5 6 7 10 11 12
2진수:1 10 11 100 101 110 111 1000 1001 1011
16진수:1 2 3 4 5 6 7 8 9 A B C D E F
10진수->2진수
64를2진수로!
64나누기2=32 나머지는0
32나누기2=16 나머지는0
16나누기2=8 나머지는0
8나누기2=4 나머지는0
4나누기2=2 나머지는0
2나누기2=1 나머지는0
1나누기2=0 나머지는1
나머지를 밑에부터 읽어봅시다.
1000000<-이것이64의 2진수입니다.
2진수->10진수
1000000를10진수로!
100000
2^6*1 + 2^4*0 + 2^3*0 + 2^2*0 + 2^1*0 + 2^0*0 = 64
※a를 n진수로 변환시 a나누기n을해서 나머지로 바꾼다.
※a의 n진수인수를 10진수로 바꿀때 n^?*?+ n^?*? + ....................
e표기법
계산기를 쓰실때 장난으로 99999999999999999999*9999999999999999를했을때 ?.????e+??등이 나와본적 있으실겁니다.
그것을 e표기법이라고 합니다.
5e+3=5000
이해하셨겠지만 5 * 10^3입니다.
만약5.3e+5가있다면 530000입니다.
5e-3은 0.005가됩니다.
이것은 5 * 10^-3이라는 것입니다.
이제 서식문자를 봅시다.
서식문자의종류
서식문자 | 출력결과 |
%d | 정수(10진수) |
%(#)o | 정수(8진수) |
%(#)x | 정수(16진수) |
%p | 포인터정수(16진수) |
%u | 부호없는정수(10진수) |
%(.?)f | 소수(10진수) |
%c | 하나의문자 |
%s | 문자열 |
%e | e표기법 |
※%#o, %#x와%o, %x의차이:원래8진수를 표기할때는 0을붙여 010이런식으로 표기합니다. 16진수는 표기할때 0x를붙입니다.0xa이렇게쓰입니다.마찬가지로#을 붙이면 16진수와8진수를 정확히 표기할수있습니다.
※%.?f는 만약 1.111111을출력할때 %.4f라고 한다면 1.1111이렇게 잘려나옵니다.
예제↓
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | #include<stdio.h> int main(void){ printf("지금은&d시 입니다.", 1); printf("지금은%#o시 이후입니다.", 10); printf("지금은%#x시 이후입니다.", 10); //%p는 나중에 설명.. printf("지금은%u시 이후입니다." 10);//-가붙어있지않다. printf("소수:%.3f입니다.", 1.111111); printf("문자:%c", 'a'); //%s도 나중에 설명.. printf("e표기법:%e", 123.1); return 0; } | cs |
여기까지 읽느라 수고하셨습니다.
Escape문자와서식문자 -끝-