프로그래밍 언어

    [SQL] 자료형

    컬럼의 자료형1) 숫자형     TINYINT, INT, FLOAT2) 문자형     CHAR, VARCHAR, TEXT, ENUM3) 날짜형     DATE, DATETIME, TIMESTAMP 숫자형 자료형1) TINYINT- 가장 작은 숫자 자료형.- 부호가 있는 경우 -128 ~ 127.             - 부호가 없는 경우 0 ~ 255.             - 1byte 크기를 갖는다. 2) SMALLINT- 부호가 있는 경우 -32768 ~ 32767.- 부호가 없는 경우 0 ~ 65535.- 2bytes 크기를 갖는다.3) MEDIUMINT- 부호가 있는 경우 -8388608 ~ 8388607.- 부호가 없는 경우 0 ~ 16777215.- 3bytes 크기를 갖는다. 4) INT-..

    [C++] 구조체 바이트 패딩 규칙 코드 (structure byte padding or align rule)

    1. Unless overridden with __declspec(align(#)), the alignment of a scalar structure member is the minimum of its size and the current packing."__declspec(align(#))을 오버라이드 하지 않으면, 스칼라 구조체(long, bool과 같은 일반 변수로만 이루어진 구조체)의 멤버는 변수의 사이즈와 현재 지정된 byte padding align을 따른다." bool과 long으로만 이루어진 각 구조체의 사이즈는 1 byte, 4 byte와 같이 각각의 멤버 사이즈대로 align 되었다.struct Size_1_Align{ bool b;};struct Size_4_Alig..

    [Python] f-string (문자열)

    기존 문자열 방식 1. 더하기 키워드 person1 = "철수" person2 = "영희" print(person1 + "는 " + person2 + "를 좋아한데요!") 2. % 서식 person1 = "철수" person2 = "영희" print("%s는 %s를 좋아한데요!"%(person1, person2)) 3. str.format 함수 person1 = "철수" person2 = "영희" print("{}는 {}를 좋아한데요!".format(person1, person2)) 이렇게 그동안 사용해오던 문법들은 각 단어가 어느 부분에 전달되는지, 어떤 기호를 빼고 읽어야 하는지 깊게 관찰이 필요하지만 f-string은 매우 직관적이고 가독성이 뛰어나다. person1 = "철수" person2 = ..

    [C#] Newtonsoft.Json 사용방법

    먼저 Nuget으로 Newtonsoft.JSON을 다운, 참조한다. 샘플 코드 아래 data1와 data2를 참조하려면 JsonExample 클래스로 받아와야 하는데 이때 제너릭 함수를 활용한다. using System; using Newtonsoft.Json; namespace NewtonsoftExample { class JsonExample { public int data1 { get; set; } public string data2 { get; set; } } class Program { static void Main(string[] args) { // Json 형식의 데이터 var json = "{'Data1' : 1, 'Data2' : 'Test'}"; // Json 형식의 string 값을 ..

    [C#] Visual Studio Nuget 설치

    [도구] -> [Nuget 패키지 관리자] 에서 찾을 수 있다. gui 환경과 콘솔 환경에서 패키지를 다운 받아 사용할 수 있다. [도구] -> [Nuget 패키지 관리자] -> [솔루션용 Nuget 패키지 관리..] 에 들어간다 관련 패키지를 검색한다. [찾아보기] 를 클릭해 해당 패키지를 검색할 준비를 한다. 설치하고 하는 패키지를 입력 및 적용 프로젝트를 선택한다. 설치할 프로젝트를 검색 후, 해당 패키지를 선택한다. 그리고 왼쪽 창에서 적용할 해당 패키지를 선택한다. 그리고 설치를 클릭한다. 예제로 redis 설치하고, hello_world 프로젝트에 적용하겠다. 설치정보를 확인한다. 설치 완료를 아래 출력창에서 확인하다. 출처

    [C#] Nuget이란?

    NuPack 기반의 NuGet은 free and open-source package manager desigend for the MS developer platform 이다. .Net 프레임워크를 위한 소스코드 관리자이다. C# 기반으로 시작되어, 2013년 부터 native c++ 프로젝트를 지원하면서 visual studio에서 가장 대표적인 오픈소스 지원 프로젝트 2010부터 시작되어, 2012 vs 버전 부터는 기본설치로 제공 되었음. NuGet은 visual studio add-in 으로서, .net을 기본으로 하여, c++, cross-platform 지원 등을 통해, 그 범위를 넓혀 다양한 오픈소스 프로젝트들을 지원함으로서, NuGet Eco-System을 구축해 나아가고 있다. 환경 NuG..

    [Python] pass, continue, break 차이점

    pass 1. 조건문에서 넣어줄 조건이 딱히 없을 경우 2. class 선언할 때, 초기에 넣어줄 값이 없을 때 for i in range(10): if i % 2 == 0: pass print(i) else: print(i) print("Done") 0 1 2 3 4 5 6 7 8 9 Done continue 다음 loop를 실행한다 for i in range(10): if i % 2 == 0: continue print(i) print(i) print("Done") 1 3 5 7 9 Done break 반복문을 멈추고 밖으로 탈출하게 된다 for i in range(10): if i % 2 == 0: break print(i) else: print(i) print("Done") Done https:/..

    [Python] 난수 random 모듈

    import random from random import random, randint random : 0부터 1까지 중에서 소수점 자리의 숫자를 무작위로 추출해준다. random.random() 결과) 0.123123 randit, randrange : 범위 안의 숫자를 선택한다, 차이점은 randrange의 start와 stop 값은 정수만 가능하다. random.randint(3, 10) 결과 10 random.randrange(3, 10, 3) 결과 9 choice, choices, sample : choice 함수를 이용하면 단일값을, choices는 여러 개의 값. temp = range(1, 10) random.choice(temp) 결과 2 random.choices(temp, k = 5)..

    [Python] math 모듈

    math 모듈은 단순 python 연산을 넘어 조금 더 복잡한 산술 연산이 필요할 때 사용한다. import math를 통해서 사용할 수 있다. 상수 math.pi) 원주율 파이로, 3.141592653589793이다. math.e) 자연 상수 e로, 2.718281828459045이다. math.tau) 타우 상수로, 6.283185307179586이다. 함수 math.pow(x, y) x에 y 승을 계산한 결과값을 반환한다 math.pow(3, 2) # 9 math.sqrt(x) 주어진 인자의 제곱근의 값을 반환한다 math.sqrt(25) # 5.0 math.ceil(x) 주어진 인자의 소수전을 올림하여 정수로 변환한다 math.ceil(3.14) # 4 math.floor(x) 주어진 인자의 소숫..

    [Python] for문 활용법

    기본형(1) : for in for 변수 in 객체: 실행문 여기서 객체는 일반적으로 문자열, 리스트, 튜플, 딕셔너리를 의미함 변수는 객체의 첫 인덱스에 해당하는 값부터 마지막 인덱스에 해당하는 값까지 차례대로 정의됨 ex) for x in 'abc' 일 경우 x는 'a' 부터 시작하여 'b', 'c' 순으로 정의됨 ex) for x in [1, 2, 3] 일 경우 x는 1 부터 시작하여 2, 3 순으로 정의됨 ex) for x in {'one':1, 'two':2, 'three':3} 일 경우 x 는 'one' 부터 시작하여 'two', 'three' 순으로 정의됨 ex) for [x, y,] in [[1, 2], [3, 4], [5, 6]] 일 경우 x, y는 각각 1, 2 부터 시작하여 3, 4 ..