이 영역을 누르면 첫 페이지로 이동
컴퓨터와 수학, 몽상 조금 블로그의 첫 페이지로 이동

컴퓨터와 수학, 몽상 조금

페이지 맨 위로 올라가기

컴퓨터와 수학, 몽상 조금

컴퓨터공학, 딥러닝, 수학 등을 다룹니다.

[6주차] 연산자 함수, 자료형 심화

  • 2020.04.10 15:30
  • 학부 수업/C프로그래밍

연산자 함수 자료형 심화

비트연산자

비트 단위로 처리되는 연산

비트 단위 논리 연산

unsigned int x, y, z; x = 0X2A; // x = 0000 0000 … 0010 1010
y = 0XAD; // y = 0000 0000 … 1010 1101
z = x & y; // z = 0000 0000 … 0010 1000
printf("%#X", z); // #: 16진수임을 나타내는 '0X'를 앞에 출력
결과: 0X28

비트 단위 이동 연산

x<<k x를 비트 단위로 왼쪽으로 k만큼 이동

unsigned int x, z;
x = 0X2A01234C; // x = 0010 1010 … 0000 1100
z = x << 4; // z = 1010 0000 … 1100 0000 (왼쪽으로 4칸 이동)
printf("%#X", z);
결과: 0XA01234C0

C언어의 비트 연산자

  • 피 연산자는 정수형에 대해서만 가능
  • 특별한 이유가 없으면 unsigned 정수 사용(이동할 때, signed에서는 때때로 1이 채워짐)

라이브러리

랜덤

rand()함수 : <stdlib.h>에 있음. 0~RAND_MAX 사이의 랜덤값 리턴.

RAND_MAX는 stdlib에 정의된 상수(32767)

srand()함수 : rand() 함수의 시드 변경
time()함수 : <time.h>에 있음. 현제 시스템 시간에 의해 결정되는 정수 리턴

실행 시간 측정

<time.h>의 clock()함수를 사용

  • 호출 당시의 시스템 시각을 CLOCKS_PER_SEC 단위로 반환.
  • 초 단위의 시간을 얻으려면 이 시간을 CLOCKS_PER_SEC으로 나눠야 함.

main() 함수의 인자

OS와 프로그램 사이의 정보 교환

프로그램 실행시 뒤에 연달아 값을 입력하면 OS에서 main함수로 값이 전달됨.

int argc로 전달된 문자열의 개수를, char *argv[]로 전달된 문자열을 받을 수 있다.

const 상수

변수 앞에 const붙여서 변수를 상수화

선언과 동시에 초기화하며, 이후 값이 고정됨.

포인터의 상수화

int a = 10, b;
const int *p = &a;

*p = 20;//오류
a = 20;//가능
p = &b;//가능
int * const p = &a;//변수 p를 상수화

*p = 20;//가능
p = &b;//오류
const int * const p = &a;

둘다 상수화도 가능하다.

'학부 수업 > C프로그래밍' 카테고리의 다른 글

[8주차] 전처리기와 분할 컴파일  (0) 2020.04.10
[7주차] 파일 입출력  (0) 2020.04.10
[5주차] 동적 할당  (0) 2020.04.10
[4주차] 구조체  (0) 2020.04.10
[3주차] 문자열  (0) 2020.04.10

댓글

이 글 공유하기

  • 구독하기

    구독하기

  • 카카오톡

    카카오톡

  • 라인

    라인

  • 트위터

    트위터

  • Facebook

    Facebook

  • 카카오스토리

    카카오스토리

  • 밴드

    밴드

  • 네이버 블로그

    네이버 블로그

  • Pocket

    Pocket

  • Evernote

    Evernote

다른 글

  • [8주차] 전처리기와 분할 컴파일

    [8주차] 전처리기와 분할 컴파일

    2020.04.10
  • [7주차] 파일 입출력

    [7주차] 파일 입출력

    2020.04.10
  • [5주차] 동적 할당

    [5주차] 동적 할당

    2020.04.10
  • [4주차] 구조체

    [4주차] 구조체

    2020.04.10
다른 글 더 둘러보기

정보

컴퓨터와 수학, 몽상 조금 블로그의 첫 페이지로 이동

컴퓨터와 수학, 몽상 조금

  • 컴퓨터와 수학, 몽상 조금의 첫 페이지로 이동

검색

메뉴

  • 홈
  • 태그
  • 방명록

카테고리

  • 분류 전체보기 (282)
    • Tech Trend (3)
    • Deep Learning (77)
      • 공부 노트 (21)
      • 논문 리뷰 (44)
      • 논문 스키밍 (1)
      • 영상처리 (11)
    • Engineering (3)
      • Tips (2)
      • Experiences (1)
    • Blog (48)
      • 회고 & 계획 (20)
      • 내 이야기 (9)
      • 리뷰 (3)
      • 군대에 간 공돌이 (10)
      • ML엔지니어 취업 도전기 (1)
      • 여행 (4)
    • 학부 수업 (141)
      • 머신러닝 (16)
      • C프로그래밍 (8)
      • 자료구조 (11)
      • 알고리즘 (17)
      • 디지털시스템 (25)
      • 컴퓨터구조 (11)
      • 확률과 통계 (21)
      • 선형대수학 (14)
      • 이산수학 (18)
      • 데이터시각화 (0)
    • 강의 (9)
      • 딥러닝 기초 (7)
      • Python (2)

공지사항

인기 글

정보

백지오의 컴퓨터와 수학, 몽상 조금

컴퓨터와 수학, 몽상 조금

백지오

블로그 구독하기

  • 구독하기
  • RSS 피드

티스토리

  • 티스토리 홈
  • 이 블로그 관리하기
  • 글쓰기

나의 외부 링크

  • profile
  • github
  • linkedin

방문자

  • 전체 방문자
  • 오늘
  • 어제
Powered by Tistory / Kakao. © 백지오. Designed by Fraccino.

티스토리툴바