Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- main 함수 인자 전달
- Patch Cleaner
- 저조도
- AppInventer
- 카메라
- 변수의 초기화와 대입
- 아이리스
- 실생활알고리즘
- 과초점거리
- 고정비트레이트
- Pixel Bit Format
- CS Mount
- Gain
- Zoom Lense
- ASCCII
- 저장소와 동적메모리
- 간단한 앱만들어보기
- Digital Slow Shutter
- image sensor
- 이미지센서
- 조건 제어문
- c언어
- 프로그래머스 lv2
- C Mount
- 심도
- 변수
- 렌즈
- camera
- 무게선별자동화
- Depth of Fileld
Archives
- Today
- Total
카메라 개발자 공부방(SW)
[16장] 아스키 코드(ASCII) 본문
반응형
오늘은 아스키코드에 대한 이야기를 해보겠습니다.
문자를 표시하기 위해서 프로그래밍 언어에선 특정 비트를 어떤 문자로 표현할지 미리 다 약속이 되어있답니다.
예를 들어
1100001는 'A' 문자 ~
그다음 1100002는 'B' 문자
그다음 1100003는 'C' 문자라고
이미 다 약속이 되어 있는데 그것을 정리한 표가 ASCII 테이블입니다.
ASCII는 미국정보교환표준부호의 약자로 미국 표준 협회(ASA)가 주도한 x3 위원회가 개발하고,
표준화가 되어서 현재 까지 널리 사용 중에 있습니다.
아스키코드는 위의 표와 같이 출력 가능한 문자와 아래와 같이 그렇지 못한 문자들의 집합으로 구성됩니다.
이번에는 코드를 보겠습니다.
#include <stdio.h>
int main()
{
char val = 'A';
printf("%c %x %d\n", val, val, val);
return 0;
}
// 실행결과
// A 41 65
1000001(hex=41)은 A라는 문자에 매핑이 되어 있기 때문에
%c 서식 문자로 출력하면 A 문자가 출력되고, 정수로 표현하면 65가 출력이 됩니다~!
이런 아스키 테이블 표의 값을 활용해서 문자열 값을 처리를 할 수 있는데요
다음 예제에서 1) 특정 문자를 제외시키거나, 2) 대소문자로 문자를 변경시켜보겠습니다.
#include <stdio.h>
int main()
{
char buf[8] = {"ab!def"};
for (int k = 0; k < 8; k++) {
if ('a' <= buf[k] && buf[k] <= 'z')
buf[k] += 32;
printf("%c", buf[k]);
}
return 0;
}
// 실행결과
// AB!DEF
소문자를 대문자로 출력하는 예제입니다.
#include <stdio.h>
int main()
{
char buf[8] = {"ab!def"};
for (int k = 0; k < 8; k++) {
if ('a' <= buf[k] && buf[k] <= 'z')
printf("%c", buf[k]);
}
return 0;
}
// 실행결과
// ABDEF
특정 문자를 제외한 예제입니다.
'Langauge > C' 카테고리의 다른 글
[18장] 구조체 (0) | 2021.10.07 |
---|---|
[17장] 동적메모리와 저장소 (0) | 2021.10.06 |
[15장] 문자열 라이브러리(string.h) (0) | 2021.10.04 |
[14장] 배열과 문자열 (0) | 2021.10.03 |
[13장] 포인터의 포인터(pointer of pointer) (0) | 2021.10.02 |
Comments