golang과 c의 차이점은 무엇입니까?

青灯夜游
풀어 주다: 2020-04-17 16:39:09
원래의
4577명이 탐색했습니다.

golang과 c의 차이점은 무엇입니까?

golang과 C 언어의 차이점

1. 표면적인 차이점 - 줄 끝의 세미콜론

C, C++, C#, Java에서 온 프로그래머는 매우 놀랄 것입니다. Go 코드에는 줄 끝 세미콜론(";")이 줄 종결자로 표시되지 않습니다. 이 문제를 설명하기 전에 중요한 사실을 선언합니다. 공식적인 Go 구문은 영어 세미콜론(";")을 끝 식별자로 사용합니다.

행 끝에 세미콜론을 추가할 필요가 없는 이유는 Go의 디자인이 다음 두 가지 고려 사항을 기반으로 하기 때문입니다.

  • 몇 가지 간단한 규칙을 사용하여 명령문의 끝을 결정할 수 있습니다.

  • 줄 끝의 세미콜론을 생략하면 코드를 더 표준화할 수 있습니다.

Golang이 컴파일될 때 코드 줄의 마지막 세그먼트(주석이 아닌 줄)가 다음 다섯 가지 상황 중 하나일 경우 줄 끝에 세미콜론이 자동으로 삽입됩니다.

  1. 세 가지 유형이 있습니다. 줄 끝의 오른쪽 괄호: 하나: ), ], };

  2. 줄 끝은 증가 또는 감소 연산자(++, –)입니다. 유형의 특정 값: 부울 값, 정수, 부동 소수점 숫자, 복수형 숫자, 유니코드 코드 포인트 또는 문자열 리터럴

  3. 줄 끝은 식별자입니다: 유형 이름, 변수 이름, 상수 이름, 점프 포함 라벨, 패키지 이름 및 패키지 소개 이름(키워드 제외)

  4. 줄 끝은 4개의 점프 키워드입니다: break, continue, fallthrough 및 return 포함(다른 키워드 제외).

  5. 2. 상수 변수의 비교

C 언어는 상수와 변수 형식을 정의합니다

数据类型 变量名称 = 值;
const 数据类型 常量名称 = 值;
로그인 후 복사
Go 언어는 상수와 변수 형식을 정의합니다

Go 언어는 다음 표준 형식 외에도 몇 가지 간단한 구문 설탕도 제공합니다

var 变量名称 数据类型 = 值;
const 变量名称 数据类型 = 值;
로그인 후 복사

3. 코드 관리 비교

코드는 C 언어에서 파일을 통해 관리됩니다 ● 특정 기능을 사용하려면 해당 .h 파일만 포함하면 됩니다

Go 언어에서는 패키지를 통해 관리되는 코드

 ●Go 언어에는 .h 파일이라는 개념이 없습니다. Go에서 특정 기능을 사용하려면 해당 패키지만 import하면 됩니다

C에서 함수와 변수의 공개 및 비공개 관리가 가능합니다. 언어

●외부 및 정적을 통해 함수 및 변수 노출 여부 구현

Go 언어에서 함수 및 변수의 퍼블릭 및 프라이빗 관리

 ● 함수 이름의 첫 글자를 대문자로 사용하여 함수 노출 여부 구현

 ● 여부 구현 변수 이름의 초기 대문자를 사용하여 변수를 공개합니다

4. 핵심 차이점

은 다음 8가지 사항을 요약합니다.

인터페이스 지향 프로그래밍

  1. 함수 다중 반환 ​​

  2. 지연된 실행

  3. 예외 처리

  4. 강력하고 고성능 네트워크 프로그래밍

  5. 메모리 관리 및 재활용

  6. 코드 크로스 플랫폼 및 크로스 컴파일

  7. 인터넷 시대에 Go가 C 언어로 알려진 것은 위의 8가지 핵심 차이점 때문입니다.

  8. 5. 구체적인 차이점

  9. C와 Go의 구체적인 차이점에 대해서는 hyperpolyglot에 대한 자세한 비교표가 있습니다: http://hyperpolyglot.org/c

hyperpolyglot.org

도구로 자세히 비교해보세요. 할 일 없을 때 살펴볼 수 있습니다. 추천 학습:

Golang 튜토리얼

위 내용은 golang과 c의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿