sourcetip

C 또는 C++에서 At 기호(@)와 달러 기호($)는 특별한 의미가 있습니까?

fileupload 2023. 6. 22. 22:07
반응형

C 또는 C++에서 At 기호(@)와 달러 기호($)는 특별한 의미가 있습니까?

최근 제 친구 중 한 명이 인터뷰에서 이 질문을 접했습니다.인터뷰 진행자는 그에게 그 특별한 캐릭터들이 좋아하는 것인지 물었습니다.$, @, |, ^, ~c 또는 c++ 및 장소에서 사용됩니다.

나는 그것을 알고 있습니다.|, ^ and ~각각 Bitwise OR, XOR 및 Complement로 사용됩니다.

하지만 저는 모르겠어요.@ and $특별한 의미가 있습니다.만약 그렇다면, 어디에 적용할 수 있는지 예를 들어 주시겠습니까?

@C에서는 일반적으로 유효하지 않습니다. 어떤 용도로도 사용되지 않습니다.Objective-C에서 다양한 용도로 사용되지만, 그것은 전혀 별개의 문제입니다.

$또한 유효하지 않지만 대부분의 구현에서는 문자처럼 식별자에 표시할 수 있습니다.(예를 들어, 이러한 구현에서는 변수 또는 함수의 이름을 지정할 수 있습니다.$$$원한다면요.)하지만 그곳에서도 특별한 의미는 없습니다.

승인된 답변을 완료하기 위해,@포함된 시스템에서 변수의 절대 주소를 지정하는 데 사용할 수 있습니다.

unsigned char buf[128]@0x2000;

비표준 컴파일러 확장자입니다.

여기에서 좋은 설명을 확인하십시오.

다른 답을 완성합니다.5.2.1.3의 C99-표준:

기본 소스 및 기본 실행 문자 집합 모두 다음과 같은 구성원을 가져야 합니다.

라틴 알파벳의 26개의 대문자

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

라틴 알파벳의 26개의 소문자

a b c d e f g h i j k l m n o p q r s t u v w x y z

십진법.

0 1 2 3 4 5 6 7 8 9

다음 29개의 그래픽 문자

! " # % & ' ( ) * + , - . / : ; < = > ? [ \ ] ^ _ { | } ~

다른 모든 문자는 존재하지 않을 수 있습니다. (그리고 사용해서는 안 됩니다.)

그러나 공통 확장명에는 다음과 같은 점도 있습니다.부록 J, J.5.2:

기본 원본 문자 집합(예: 달러 기호 $ 또는 국가 문자 집합의 문자)의 일부가 아닌 밑줄_, 문자 및 숫자 이외의 문자는 식별자(6.4.2)에 표시될 수 있습니다.

그것은 기본적으로 이미 twarkwuff가 쓴 것입니다.

언급URL : https://stackoverflow.com/questions/24114365/does-at-symbol-and-dollar-sign-has-any-special-meaning-in-c-or-c

반응형