void
은 C 프로그래밍 언어의 데이터 유형입니까? 그렇다면 어떤 유형의 값을 저장할 수 있습니까? 값을 저장하기 위해 int
, float
, char
등이있는 경우 void
이 필요한 이유는 무엇입니까?C에서 데이터 형식이 무효입니까?
답변
보이드는 조직적 목적으로 데이터 유형으로 간주되지만 기본적으로 "데이터 없음"을 나타 내기 위해 데이터 유형을 입력 할 자리 표시 자로 사용하는 키워드입니다. 포인터로 사용하는 경우에는
void bad_variable;
:이 같은 변수를 선언 할 수 없습니다,
void MyRoutine();
그러나 :
따라서, 당신은 값을 반환하지 않는 루틴을 선언 할 수 있습니다 , 다른 의미를가집니다 :
void* vague_pointer;
이것은 포인터를 선언하지만 지정하지는 않습니다 어떤 데이터 유형인지 가리 킵니다.
C 표준은 void
이 완료 할 수없는 불완전한 유형이라고 말합니다 (완성 될 수있는 다른 불완전한 유형과 달리). 즉, 연산자를 void
에 적용 할 수 없지만 불완전한 유형의 포인터를 가질 수 있습니다.
예, void
은 유형입니다. 데이터가 유형인지 여부는 해당 용어를 정의하는 방법에 따라 다릅니다. C 표준은 그렇지 않습니다.
표준은 "객체 유형"이라는 용어를 정의합니다. C99 및 그 이전; void
은 개체 유형이 아닙니다. C11에서는 그렇습니다. 모든 표준 버전에서 void
은 유형이입니다. C11에서 변경된 점은 불완전한 유형이 이제는 객체 유형의 하위 집합이라는 점입니다. 이것은 용어의 변화 일뿐입니다. (유형의 다른 종류는 함수 타입이다.)
C99 6.2.6 단락 19 말한다
보이드 유형 값의 빈 세트를 포함하고; 완료 할 수없는 유형 인 불완전한 입니다.
는
C11 표준은 약간 변화 표현 :
보이드 유형 값의 빈 세트를 포함하고; 을 완료 할 수없는 불완전한 오브젝트 유형입니다.
이것은 불완전한 유형을 포함하는 "객체 유형"의 정의에서 C11의 변경을 반영합니다. 유형 void
의 본질에 대해서는 실제로 변경되지 않습니다.
void
키워드
을 함수 프로토 타입의 유일한 매개 변수 유형으로, 에서, 그것은 함수가 매개 변수가없는 것을 나타냅니다. (C++에서는 빈 괄호를 사용하지만 C에서 다른 것을 의미합니다.)
void func(int n)
과 같이 함수의 반환 유형으로 함수가 결과를 반환하지 않음을 나타냅니다.void*
은 가리키는 대상을 지정하지 않는 포인터 유형입니다. 원칙적으로
, 이러한 용도는 모두 유형void
를 참조하지만 당신은 또한 동일한 키워드를 사용하는 일이 바로 특수 구문로 생각할 수 있습니다.
int func()와 int void()의 차이점은 무엇입니까? –
@ funky-nd :'int void()'는 구문 오류입니다. –
- 1. 데이터 형식이 일치하지
- 2. 데이터 형식이 TEXT 인
- 3. wsdl s : 시간 형식이 C에서 작동하지 않습니다 #
- 4. C에서 액세스 데이터베이스에서 데이터 읽기
- 5. Nsstring 개체의 데이터 형식이 변경됩니다.
- 6. OpenRecordSet 데이터 형식이 일치하지 않습니다.
- 7. SQLite : 데이터 형식이 따옴표에 의존합니까?
- 8. C에서 Excel 데이터 읽기
- 9. C에서 Java로 데이터 전달
- 10. C에서 사용되는 데이터 유형
- 11. C에서 데이터 테이블을 반복합니다.
- 12. SQL "지정한 데이터 형식이 유효하지 않습니다"오류
- 13. 저장소 패턴 및 데이터 형식이 반환되었습니다.
- 14. 데이터 형식이 일치하지 ODBC를 통해 Access를 사용
- 15. 어셈블리 언어에는 몇 가지 데이터 형식이 있습니까?
- 16. DataGridViewCell에서 형식이 잘못된 데이터 입력을 방지하는 방법
- 17. .xls로 내보낼 때 데이터 형식이 유지되지 않음
- 18. vb.net에서 조건 식의 데이터 형식이 일치하지 않습니다.
- 19. 형식이 지정되지 않은 문자열에서 데이터 추출
- 20. 데이터 형식이 IComparable 인터페이스를 구현하는지 확인하려면 어떻게해야합니까?
- 21. 조건 식의 데이터 형식이 일치하지 않습니다.
- 22. 조건 식의 데이터 형식이 일치하지 않습니다.
- 23. 데이터 세트 - 형식이 테이블간에 전환하는 메뉴
- 24. 게시물 데이터 형식이 다른 경우 다음과 같습니다.
- 25. IPC를 통해 C에서 Python으로 이진 데이터 보내기
- 26. C에서 호출 할 때 함수의 반환 형식이 지정되는 이유는 무엇입니까?
- 27. SQL 데이터 형식 변환 방법에 CLR 데이터 형식이 있습니까?
- 28. C에서 BIOS를 사용하여 데이터 표시
- 29. C에서 클래스에 XML 데이터 매핑
- 30. C에서 그래프 데이터 구조 구현
어떤 언어로 이야기하고 있습니까? 기음? C++? 기음#? 자바? 다른 것? – Oded