728x90
반응형

일을 하거나 혹은 과제 중에 급하게 내가 한 로직이 맞거나 기본적인 테스트를 위한 도구이다.

보통 테스트를 하려면 다시 프로그램을 실행시켜서 이래저래 빌드도 해야 하고 경우에 따라서 불편한 경우다 많다.

그 때 온라인에서 바로 간단하게 테스트를 할 수 있는 사이트를 소개 하려고 한다.

 

사이트 명은 : GDB Online Debugger

본인은 주로 C혹은 C++를 사용을 하는데 매우 유용 하다.

www.onlinegdb.com

 

GDB online Debugger | Compiler - Code, Compile, Run, Debug online C, C++

Online GDB is online compiler and debugger for C/C++. You can compile, run and debug code with gdb online. Using gcc/g++ as compiler and gdb as debugger. Currently C and C++ languages are supported.

www.onlinegdb.com

원하는 언어를 선택 하여 간단하게 테스트를 진행 할 수 있다.

728x90
728x90
반응형

오늘은 static변수 및 static 함수에 대해서 공부를 해볼 예정이다.

static변수및 함수. 정적 변수 와 정적 함수라고 표현 한다.

우리는 일반적으로 함수를 정의 하면 여러군대에서 호출 하여 사용 한다.

그러나 static 키워드를 붙이면 해당 소스 파일 내부에서만 사용이 가능 하다.

그럼 예제를 보도록 하자.

 

일반적으로 사용 하는 함수방식의 결과값이다. 

우리가 흔히 아는 방식으로 결과 값이 나온다.

 

만약에 다른 소스코드에 같은 함수명을 사용 한 경우는 어떨까?

test.c라는 파일을 추가 하고 똑같은 func1을 정의 하면 다음과 같은 에러가 발생.

중복으로 func1이 지정되어 있어서 컴파일 에러를 발생 시킨다.

 

이럴 때 static을 사용 하면 해당 에러가 사라진다.

둘중에 하나만 하던지 아니면 둘다 하는게 좋다.

개인적으로는 중복이 되는 네이밍이 있다면 중복되는 네이밍 전부 static을 붙여 주자.

 

static 키워드를 붙이면 해당 에러가 사라 진다.

 

static 변수.

static변수는 값이 계속 유지가 된다.

또한 global변수와 다르게 해당 코드 내에서만 호출이 가능하다.

 

 

728x90
728x90
반응형

자동차를 구매하고 벌써 5만키로를 넘게 탔다.

기아 AutoQ에서 앞뒤 교환을 하고, 어느덧 뒷타이어가 교체할 시기가 되어서

교체를 하기 위해 인터넷 구매를 하려고 한다.

 

예전에 자동차에 대해서 아예 무지 할 때 18인치 타이어 두개를 교체 한적이 있었는데 

일반 장착점에서.. 40만원...에 구매.

완전 덤탱이 제대로 씌였지.. 그땐 몰랐다는..

 

그래서, 인터넷에서 직접 구매하여 무료장착점 연결 된 곳에서 할 예정이다.

일단 나의 타이어 사이즈를 측정 해보자.

 

내가 교환할 타이어의 사이즈는, 235/55R19

 

235mm (타이어 단면폭)

55 : 편평비 50%

19 : 인치

 

일단 비 전문가 입장에서는 싸고 좋은게 가장 좋은게 아닐가?

다나와를 먼저 검색해본다.

 

다나와에 가면 저렇게 내 타이어 정보를 입력 해주면 그에 맡는 결과 값을 보여준다.

 

 

 

 

나는 여기서 지정점무료장착으로 하였다.

 

그래서 무엇을 선택 하였느냐??

 

내가 선택한건 이거, 적당할 것으로 판단하였고 현재 타이어도 넥센이고,

일단 평점이 4.9 이고 넥센 홈페이지에서도 평이 좋아서 가격대비 좋을 것으로 판단 하였다.

그리고 직영 장착서비스를 신청 하고 11번가가 가장 싸서 구매를 하였다.

며칠 후에 장착점으로 시공하는 것으로 올릴 예정이다.

 

그럼 ~~ 다음에....

728x90
728x90
반응형

간단하게 파일에 내용을 가져와서 사용을 해야 할 일이 있어서 테스트겸 만들어 보았다.

C++을 잘 사용 할 줄몰라서 C/C++를 혼용하여 사용 하였으면 최종 데이터 저장 컨테이너는

map으로 사용 하였고, 멀티맵을 하지 않은 이유는 겹치는 key는 발생 할 일이 없을 것으로 판단 하였다.

 

테스트 파일 원본.
//YAS.
DEMO 3

//Tuen.
TONVOLUME 22

//Max T
MAXVOLUME 45

//Reset Timer
RESETTIMER 0

//KEY PATEERN
KEY 2

//USBPLAY
//USBREPEAT ALL
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <cstring>
#include <map>
#include <vector>

using namespace std;

typedef struct {
    string key;
    string value;
}USB_DATA;

map<string, string> mapData;

int TrimRight(char *p)
{
    int len = strlen(p);

    if(len <= 0)
    {
        p[0] = 0;
        return 0;
    }
    else
    {
        len--;
        while(len)
        {
            if((unsigned char)p[len] > ' ') break;

            p[len] = 0;
            len--;
        }
    }

    return strlen(p);
}

bool parsingData(char* str)
{
    int cnt = 1;
    char *tok = NULL;

    USB_DATA t_data;

    if(str != NULL)
    {
        if(str[0] == '/' && str[1] == '/')
        {
            return false;
        }
        TrimRight(str);

        tok = strtok(str, " ");
        if(tok == NULL)
        {
            return false;
        }

        t_data.key = tok;

        tok = strtok(NULL, " ");
        if(tok == NULL)
        {
            return false;
        }

        t_data.value = tok;
    }

    //printf("struct data[%s][%s]\n",t_data.key.c_str(), t_data.value.c_str());

    mapData.insert(make_pair(t_data.key, t_data.value));

    return true;
}

bool getDataFile()
{
    FILE    *fp = fopen("demo_mode3.txt","r");
    int     len = 0, total = 0;
    char    buff[64] = {0,};

    if(fp == NULL)
    {
        printf("file open fail\n");
        return false;
    }

    char *p;
    while(!feof(fp))
    {
        p = fgets(buff, sizeof(buff), fp);
        if(p != NULL)
            parsingData(p);
    }

    fclose(fp);

    return true;
}

void print_map()
{
    for(auto itr = mapData.begin(); itr != mapData.end(); ++itr)
    {
        cout << "key : " << itr->first << ", " << "value : " << itr->second << endl;
    }
}

int main(void)
{
    printf("Program parsing\n");

    getDataFile();

    print_map();

    return 1;
}

 

결과 값. 

 

위의 결과에서 주석은 제거, 빈공간 제거등을 하여서 데이터만 가져오도록 하였고,

데이터 구분은. ' '(스페이스)로 처리 되어있다.

728x90
728x90
반응형

영화 한글자막, 히든피겨스

Hidden.Figures.2016.1080p.BluRay.x264.smi
0.17MB

728x90
728x90
반응형

나는 넷플릭스를 자주 보는 편이다. 드라마 부터 다큐 모든장를 골고루 보는데

개인적으로 재미 있거나 킬링타임용으로 볼만 한 것들은 주변 지인들한테 추천을 해주는 편이다.

이번에도 추천을 해주어서 나름 괜찮다고 얘기를 들어서 블로그에도 올려보려고 한다.

이번에 추천를 해볼 영화는 넷플릭스에 있는 "오버로드" 라는 영화 이다.

킬링타임용으로 괜찮고 나름 영화에 집중을 할 수 있다고 본다.

 

2차 세계대전이 배경이다.

참. 나치는 아직까지도 많은 영화나 드라마 주제로 표현이 되는 것 같다.

 

먼저 해당 사진으로 봐도 뭔가.... 이상하다?

고어물인가? 스릴러 장르인가???

 

개인적으로는 고어 스릴러?ㅎㅎ 암튼.

 

그렇게 무섭진 않다. 그리고 되게 심하게 징그럽지도 않다고 생각된다.

 

나름 집중하면서 볼 수 있고, 여자 주인공도 매력이 있고군인들도 츤데레..ㅎㅎ

 

결말도 나쁘지 않다.

고로 추천..

 

개인 평점 : 7.5/10

 

 

728x90

'넷플릭스' 카테고리의 다른 글

넷플릭스 강력 추천 - 귀멸의 칼날  (0) 2021.06.12
[영화추천] 아미오브더데드  (0) 2021.05.29
728x90
반응형

애니메이션 한글자막, 진격의거인 시즌2

진격의거인_시즌2.zip
0.18MB

728x90
728x90
반응형

미드, 원헌드레드(The.100) 시즌1 한글자막.

원헌드레드 더100 1시즌 1-13화 [완] 720p 고화질 한글자막.zip
0.36MB

 

728x90

+ Recent posts