구조체 초기화 방법
C 구조체 초기화 다음 C 구조체 초기화 방법 중 문법에 위배되는 것은? (단, C99 기준) struct MyStruct { int a; int b; }; // method 1 struct MyStruct m1 = {0, 1}; // method 2 struct MyStruct m2; m2 = (struct MyStruct){0, 1}; // method 3 struct { int ...
C 구조체 초기화 다음 C 구조체 초기화 방법 중 문법에 위배되는 것은? (단, C99 기준) struct MyStruct { int a; int b; }; // method 1 struct MyStruct m1 = {0, 1}; // method 2 struct MyStruct m2; m2 = (struct MyStruct){0, 1}; // method 3 struct { int ...
Go의 built-in 자료구조인 배열, 슬라이스, 맵에 대해 자세히 살펴보자. 크기 배열, 슬라이스, 맵은 모두 복수의 요소를 저장할 수 있다. 따라서 몇 개의 요소를 가지고 있는 ...
우선 C/C++에서 상수를 만드는 키워드인 const와 final에 대해 간략히 정리해보자. C/C++ const의 역할 변수의 읽기전용 설정 = 상수화 (C++) 멤버 함수의 ...
본문 중 심볼(symbol)에 대한 내용은 편의상 리눅스 환경에서 빌드한 바이너리를 readelf 명령으로 확인한 결과입니다. C/C++, Java에서 가장 특이한 함수는 누가 뭐래 ...
이 글은 마지막 commit id가 4ba5527…인 Go 소스 코드를 기준으로 합니다. 함수명, 변수/상수명, 변수/상수값 등은 버전에 따라 다를 수 있습니 ...
Go의 switch 작성 규칙은 다음과 같다. SwitchStmt = ExprSwitchStmt | TypeSwitchStmt . 이 중 ExprSwitchStmt 규칙은 다음과 같다. ExprSwitchStmt = "switch" [ SimpleStmt ";" ] [ Expression ] "{" { ExprCaseClause } "}" . ExprCaseClause = ExprSwitchCase ":" StatementList . ExprSwitchCase = "case" ExpressionList | "default" . 자세히 보면 switch 뒤에 ...
Go도 당연히 다른 언어처럼 작성한 코드의 재사용이 가능하다. 쉬이 예상 가능하듯, 패키지를 만들고 이를 임포트해 재사용할 수 있다. 그런데 Go는 C++이나 Ja ...
상수의 타입과 한계 명시적이지 않은 듯 명시적인 Go에서 한 것처럼 reflect 패키지를 이용해 타입을 명시하지 않은 상수의 타입에 대해 알아보자. package main import "fmt" import "reflect" func main() { const A = ...
Go는 변수를 선언할 때 초기값을 같이 입력하면 굳이 타입을 명시하지 않아도 된다. var i = 1 f := 3.14 c := 1.0 + 1.0i 그렇다면 이 경우 i, f, c의 타입은 각각 어떻게 될까? G ...
Go는 lexer가 세미콜론을 자동으로 삽입하기 때문에 직접 소스코드에 입력할 경우가 거의 없다. Go 언어의 장점 중 하나로 얘기되지만, Go를 처음 접하는, 세미 ...