반응형

<개인공부>/[C언어, C++] 40

[C언어/C++] atoi, atof, atol 함수 (char* to int)

안녕하세요. BlockDMask 입니다. 오늘은 C, C++에서 문자열을 숫자(정수, 실수)로 변환하는 함수들에 대해서 알아보겠습니다. (C/C++ 에서 string -> char* -> int 로 변경? [바로가기])(C++에서 int -> string 으로 바로 바꾸는 것을 보고싶다면 [바로가기])(C++ 에서 string -> int 의 변경? [바로가기]) 1. 문자열을 숫자로 atoi, atof, atol 함수 이름의 기원2. atoi, atof, atol 함수 원형3. 문자를 숫자로 바꿔주는 atoi, atol, atof 예제4. 만약 숫자가 아닌 문자를 숫자로 바꾸려 한다면?5. atoi("문자열"), atoi("0")의 반환형이 같다면? 어떻게 구분을 할까? 1. atoi, atof, at..

[C언어/C++] rand, srand, time 랜덤함수에 대해서 (난수생성)

안녕하세요. BlockDMask 입니다.오늘은 C/C++로 개발할때 가끔 사용하는 랜덤한 수(난수)를 생성하는 함수에 대해서 알아보겠습니다.랜덤한 값을 가지고올때 필요한데요. 그럼 시작해보겠습니다.1. rand 함수원형과 사용법1) 헤더파일- C언어 / C++ 2) 함수원형- int rand (void) 3) rand 함수가 하는일: Generate random number [0 ~ RAND_MAX]: 랜덤한 숫자를 반환합니다.: 그 범위는 0~ RAND_MAX 까지인데요, RAND_MAX라는 것은 stdlib.h 헤더파일에 매크로로 작성되어있습니다.: RAND_MAX = 32767: 결국 rand() 함수가 반환하는 값은 0~32767 사이의 값 이라는 것입니다. 하지만, rand() 함수는 프로그램이..

[C언어/C++] pow, sqrt 함수에 대해서(루트함수, 제곱, 제곱근)

안녕하세요. BlockDMask 입니다 오늘은 (저는) 자주 쓰지는 않지만 꼭 알아둬야하는 함수를 두개 묶어서 가지고왔습니다. 바로 pow, sqrt 함수인데요. 중학교때 제곱과 제곱근(루트) 배우셨죠? 그걸이제 C언어, C++에서 사용해 볼겁니다! 그럼 시작해보겠습니다.1. C/C++ pow 함수 원형과 사용법- 헤더파일 : C언어 / C++ - C언어에서의 함수 원형 : double pow(double base, double n) - C++11에서의 함수 원형 1. double pow(double base, double n) 2. float pow(float base, float n) 3. long double pow(long double base, long double n) (C++에서는 함수 오버..

[C언어] 동적할당 정리2 (malloc, free 예제)

1. 동적할당 malloc, free 에 대해서2017/07/10 - [/[C언어 & C++ 언어]] - [C 언어] 동적할당 정리1 (malloc, realloc, calloc, free 함수)2017/07/07 - [/[Operating System]] - [운영체제] 프로세스란? (스케줄링, 메모리구조, 상태변화)동적할당이라는 것은 프로그램 실행중에 동적으로 메모리를 할당하는 것을 말합니다.여기서! 중요한것은 동적으로 메모리를 할당할때 Heap(힙)영역에 할당을 한다는 것 입니다.메모리 영역에 대해서 궁금하시다면 위에 [운영체제] 프로세스랑? 부분에 정리를 해놓았습니다.함수 원형은 void* malloc(size_t size) 입니다.해당 함수를 사용하기 위해서는 헤더파일을 include 해야합니다..

[C언어/C++] assert 함수에 대해서 : 디버깅을위한, 더 안전한 코드를 위한 오류 검출 방법

1. C/C++ assert함수란? - 간단하게 말하자면 assert 함수는 디버깅 모드에서 개발자가 오류가 생기면 치명적일 것이라는 곳에 심어 놓는 에러 검출용 코드입니다.- 예를들어서 int score 가 음수가 나오면 절대 안되는 상황이라고 가정을 하면, 보통 우리는 아래와 같이 코드를 작 성 할 수 있습니다.12345678910111213 int GetScore(){ //어딘가에 정의 되어있는 score라고 하면 if(score = 0); cout

[C언어/C++] define 매크로와 inline 함수에 대해서

안녕하세요. BlockDMask 입니다.오늘은 inline 함수와 define(매크로)에 대해 정리해볼까 합니다.A. 매크로(define)와 예시B. 매크로(define)함수와 예시C. 인라인(inline)함수와 예시D. 총 정리. A-1. 매크로(define)란 - 여러번 사용하게 될 상수를 문자로 표현하여 변경시에도 편리하게 사용할 수 있도록 하는 것.- 이러한 매크로 상수는 컴파일 전에 전처리기에 의해서 숫자로 치환 됩니다. #define [이름] [숫자] A-2. 매크로(define)사용 예시 123456789101112131415161718//매크로 예제 #include#define MAX_LEN 20 using namespace std;int main(void){ int * arr = new ..

[C언어/C++] clock 함수를 통한 알고리즘 시간 측정

안녕하세요.BlockDMask 입니다.오늘은 "내가 짠 알고리즘이 어느정도 시간이 걸렸나?" 라는 것을 알 수 있게 시간을 잴 수 있는 코드에 대해서 알아보겠습니다. 1. clock() 함수C 언어 에서는 , C++ 에서는 헤더파일에 들어있습니다.기본형 clock_t clock(void); //프로그램이 시작하고 나서 부터 프로세서가 소모한 시간을 리턴합니다. return 타입인 clock_t는 clock ticks 를 뜻합니다.CLOCKS_PER_SEC는 메크로 인데 clock_t 의 값을 CLOCKS_PER_SEC으로 나누면 소모한 시간(clock ticks per second)이 나옵니다.2. 사용 방법123456789101112131415161718192021#include#include#incl..

[C언어/C++] 올림, 내림, 반올림 (floor, ceil) 함수

안녕하세요 BlockDMask 입니다. 오늘은 올림, 내림 을 할수있는 ceil, floor 함수에 대해서 알아보고. floor 함수를 통해서 반올림을 하는 것 까지 보도록 하겠습니다. C의 함수들이 C++에 호환이 되어서 C에서 쓸때와 C++에서 쓸때의 차이점은 헤더파일, 메서드 오버로딩 (메서드, 함수 이름이 같아도 인자가 다르면 선언이 되는것) 이 있습니다. 오버로딩은 C++에서만 지원합니다. 글 순서는 헤더파일 소개 -> 함수(메소드)가 선언된 원형과 사용법 -> 실제 예시 -> + 알파 순으로 가겠습니다. 그럼 시작하겠습니다. (C++ 반올림(round)함수 포스팅 [바로가기]) (C++ 버림(trunc)함수 포스팅 [바로가기]) 0. 헤더파일(header) [C 언어] : [C++] : 1. ..

[C언어] 배열포인터, 포인터배열 정리 (pointer)

안녕하세요! BlockDMask 입니다 오늘은 많이들 햇갈려 하는 array pointer pointer array pointer pointer array array pointer. C언어의 포인터 개념과 배열 개념을 조금은 알고 계셔야 내용을 이해할 수 있을 것 입니다. 포인터배열, 배열포인터를 간단하게 정리해보겠습니다. 우리나라말은 끝까지 들어보라고 하지 않씁니까. 뒤에있는게 중요하다는 뜻이죠. 포인터"배열" / 배열"포인터" 시작하겠습니다.이해를 돕기위해 직접 그림도 그렸습니다. 손그림이었는데 이번에 ppt로 바꾸어봤습니다.훨씬 이해하기 편하지 않을까 싶습니다. 1. 포인터 배열이란. 2. 배열 포인터란. 1. 포인터 배열이란 ▶ 포인터 들의 배열이다. 배열의 요소가 포인터들로 이루어져 있다. ▶ ..

[C언어] 동적할당 정리1 (malloc, realloc, calloc, free 함수)

1) 함수 종류 및 설명.아래 링크로 가시면 좀더 자세히 나와있습니다. 아래 링크가 이번에 작성한 내용입니다.2018/10/31 - [/[C언어 & C++ 언어]] - [C 언어] 동적할당 정리2 (malloc, free 예제)프로그램 실행 도중에 필요한 메모리 공간을 할당하고 사용 후 해당 공간을 해제하는 것. 헤더파일 : 메모리 할당 함수 - malloc 메모리 할당 및 초기화 - calloc 메모리 추가 할당 - realloc 메모리 해제 함수 - free. 2) 함수 원형 void *malloc(size_t size); 할당받을 메모리 크기를 인자로 받음ex) int * arr = (int *)malloc(sizeof(int) * n); //인자의 갯수가 n개의 배열을 동적할당한다(그만큼의 메모리..

반응형