programing

데이터 유형 생략(예: "unsigned int" 대신 "unsigned")

minimums 2023. 6. 7. 22:26
반응형

데이터 유형 생략(예: "unsigned int" 대신 "unsigned")

C/C++ 코드에서 데이터 형식 선언이 다음과 같은 방식으로 생략되는 경우를 알고 있습니다.unsigned test=5;컴파일러는 자동으로 이 변수를 int(이 경우에는 부호 없는 int)로 만듭니다.C 표준이며 모든 컴파일러에서 작동할 것이라고 들었습니다.

하지만 저는 이것을 하는 것이 나쁜 관행으로 여겨진다고도 들었습니다.

당신은 어떻게 생각하나요?정말로 타이핑을 해야 합니까?unsigned int의 대신에unsigned?

이다short,long그리고.long long데이터 유형도 있습니까?

unsigned 는 데이터 유형입니다!그리고 그것은 우연히 발생합니다.unsigned int.

글을 쓸 때unsigned x;데이터 유형을 누락하지 않았습니다.

이것은 "기본값"과 완전히 다릅니다.int이는 C에 존재하지만 C++에는 존재하지 않습니다!. 여기서 선언에서 유형을 생략하고 C는 자동으로 해당 유형을 다음과 같이 추론합니다.int.

스타일에 관해서는, 저는 개인적으로 명시적이고 따라서 쓰는 것을 선호합니다.unsigned int반면에, 저는 현재 도서관에 관련되어 있습니다. 도서관에서 그냥 글을 쓰는 것이 관례입니다.unsigned그래서 저는 대신 그렇게 합니다.

한 걸음 더 나아가 stdint의 uint32_t 타입을 사용할 것입니다.
취향의 문제일 수도 있지만, 플랫폼별로 최적화하는 것에 대한 오래된 고려 사항보다 어떤 원시적인 것을 사용하는지 알고 싶습니다.

@Konrad Rudolph가 말했듯이,unsigned 데이터 형식입니다.그건 정말로 단지 에 대한 가명일 뿐입니다.unsigned int.

사용에 관한 문제에 관하여unsigned나쁜 습관?아니요, 사용하는 것은 아무 문제가 없습니다.unsigned데이터 형식 지정자로 지정합니다.전문가들은 이것과 당신이 사용해야 한다는 코딩 표준에 의해 던져지지 않을 것입니다.unsigned int제 생각에는 불필요하게 엄격한 사람입니다.

쓸데없이 장황하게 말하는 것은 해로운 것으로 여겨집니다.나는 절대 쓰지 않을 것입니다.unsigned int또는long int또는signed무엇이든지(제외)charbitfields)는 혼란을 증가시키고 80개 열에 넣을 수 있는 의미 있는 코드의 양을 줄이기 때문입니다. (또는 80개 열에 맞지 않는 코드를 작성하도록 권장합니다...)

언급URL : https://stackoverflow.com/questions/4315828/omitting-the-datatype-e-g-unsigned-instead-of-unsigned-int

반응형