c data types
자세히 알아보기 예제가있는 C ++의 데이터 유형.
이것에 완전한 C ++ 교육 자습서 , 이 튜토리얼에서는 C ++의 데이터 유형에 대해 설명합니다.
우리는 이미 C ++의 다양한 엔티티를 이름으로 식별하는 데 사용되는 식별자를 보았습니다. 식별자 외에도 변수 저장소의 정보 또는 데이터도 알고 있습니다.
데이터를 변수와 연관 시키려면 정확히 어떤 데이터를 연관시킬 것인지, 즉 변수가 알파벳 만 저장하는지 숫자 만 저장하는지 또는 둘 다 저장 하는지를 알아야합니다. 즉, 변수에 저장할 데이터 나 정보를 제한해야합니다.
이것이 바로 데이터 유형이 그림에 나오는 곳입니다. 데이터 유형은 변수가 저장해야하는 데이터 유형을 알려주는 데 사용된다고 말할 수 있습니다. 변수에 할당 된 데이터 유형에 따라 운영 체제는 메모리를 할당하고 변수에 저장할 데이터 유형을 결정합니다.
학습 내용 :
데이터 유형
C ++는 프로그램과 함께 사용할 두 가지 유형의 데이터를 지원합니다.
- 기본 / 표준 데이터 유형
- 사용자 정의 데이터 유형.
다음은 C ++의 데이터 유형을 그림으로 나타낸 것입니다.
기본 또는 표준 데이터 유형
기본 데이터 유형은 C ++ 언어가 제공하는 기본 제공 유형입니다. 변수, 상수 등과 같은 엔티티를 선언하는 데 직접 사용할 수 있습니다. 또는 미리 정의 된 데이터 유형 또는 표준 데이터 유형으로 호출 할 수도 있습니다.
다음은 C ++에서 해당 키워드와 함께 지원하는 다양한 기본 데이터 유형입니다.
- 정수 => 정수
- 문자 => 문자
- 부동 소수점 => 부동
- 이중 부동 소수점 => double
- 부울 => 부울
- 무효 또는 무가치 유형 => 무효
- 와이드 문자 => wchar_t
사용자 정의 데이터 유형
C ++에서는 클래스 나 구조와 같은 자체 데이터 유형을 정의 할 수도 있습니다. 이를 사용자 정의 유형이라고합니다.
C ++의 다양한 사용자 정의 데이터 유형은 다음과 같습니다.
- Typedef
- 열거
- 클래스 또는 객체
- 구조
이러한 유형 중에서 클래스 데이터 유형은 C ++의 객체 지향 프로그래밍에서만 독점적으로 사용됩니다.
원시 데이터 유형
다음 표는 다양한 특성과 함께 C ++에서 지원하는 모든 기본 데이터 유형을 보여줍니다.
데이터 형식 | C ++ 키워드 | 값 유형 |
---|---|---|
넓은 캐릭터 | wchar_t | 유니 코드 문자열을 포함한 문자 |
캐릭터 | 숯 | 문자 (ASCII 값) |
정수 | int | 숫자 정수 |
부동 소수점 | 흙손 | 단 정밀도의 10 진수 값 |
소수점 | 더블 | 배정 밀도 부동 소수점 값 |
부울 | 부울 | 참 또는 거짓 |
빈 | 빈 | 무가치 (가치 없음) |
데이터 유형 수정 자
다른 값을 저장하는 기본 데이터 유형은 데이터 유형 수정 자라는 엔티티를 사용하여 보유 할 수있는 값의 길이를 수정합니다.
따라서 C ++에는 다음 유형의 데이터 수정자가 있습니다.
- 서명 됨
- 서명되지 않음
- 짧은
- 긴
각 수정자가 나타내는 데이터 범위는 사용중인 컴파일러에 따라 다릅니다.
아래 프로그램은 다양한 크기의 다양한 데이터 유형을 생성합니다.
#include using namespace std; int main() { cout<<'Primitive datatypes sizes: '< 산출:
기본 데이터 유형 크기 :
short int : 2 바이트
unsigned short int : 2 바이트
int : 4 바이트
unsigned int : 4 바이트
long int : 8 바이트
unsigned long int : 8 바이트
long long int : 8 바이트
unsigned long long 정수 : 8 바이트
char : 1 바이트
부호있는 문자 : 1 바이트
부호없는 문자 : 1 바이트
부동 : 4 바이트
double : 8 바이트
long double : 16 바이트
wchar_t : 4 바이트
이 출력의 스크린 샷은 다음과 같습니다.
보시다시피 연산자의 크기를 사용하여 각 데이터 유형이 지원하는 최대 데이터 크기를 얻을 수 있습니다.
이러한 모든 데이터 유형과 해당 크기는 아래와 같이 표로 만들 수 있습니다.
데이터 형식 비트 폭 범위 짧은 정수 2 바이트 32768에서 32767 숯 1 바이트 127 ~ 127 또는 0 ~ 255 부호없는 문자 1 바이트 0에서 255 서명 된 문자 1 바이트 127에서 127 int 4 바이트 2147483648 ~ 2147483647 서명되지 않은 정수 4 바이트 0에서 4294967295 서명 된 정수 4 바이트 2147483648 ~ 2147483647 부호없는 짧은 정수 범위 0에서 65,535 서명 된 짧은 정수 범위 32768에서 32767 long int 4 바이트 2,147,483,647 ~ 2,147,483,647 서명 된 long int 4 바이트 long int와 동일 unsigned long 정수 4 바이트 0에서 4,294,967,295 흙손 4 바이트 +/- 3.4e +/- 38 (~ 7 자리) 더블 8 바이트 +/- 1.7e +/- 308 (~ 15 자리) 롱 더블 8 바이트 +/- 1.7e +/- 308 (~ 15 자리) wchar_t 2 또는 4 바이트 넓은 문자 1 개
이것은 C ++의 기본 데이터 유형에 관한 것입니다. 사용자 정의 데이터 유형
이름 자체가 제안하는 이러한 데이터 유형은 사용자 자체에 의해 정의됩니다. 사용자 정의이므로 프로그램의 요구 사항에 따라 사용자 정의 할 수 있습니다.
Typedef
typedef 선언을 사용하여 데이터 유형에 대한 별칭 또는 다른 이름을 만듭니다. 그런 다음이 별칭을 사용하여 더 많은 변수를 선언 할 수 있습니다.
예를 들어 C ++에서 다음 선언을 고려하십시오.
typedef int age;
이 선언을 통해 int 데이터 유형에 대한 별칭 연령을 만들었습니다.
따라서 비슷한 것을 선언하려면 아래와 같이 표준 데이터 유형 대신 별칭을 사용할 수 있습니다.
age num_of_years;
alias는 표준 데이터 유형의 또 다른 이름 일 뿐이며 표준 데이터 유형과 유사한 방식으로 사용할 수 있습니다.
열거
C ++의 열거 형은 각 값에 해당하는 정수 상수가있는 값 집합으로 구성된 사용자 정의 데이터 유형입니다.
예를 들어, 다음과 같이 열거 형 데이터 유형으로 요일을 선언 할 수 있습니다.
enum daysOfWeek {Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday};
기본적으로 각 열거 형 값의 정수 상수는 0으로 시작합니다. 따라서‘일요일’의 값은 0이고‘월요일’은 1입니다.
그러나 다음과 같이 in-between의 시작부터 기본값을 변경할 수도 있습니다.
enum daysOfWeek {Sunday, Monday, Tuesday=5, Wednesday, Thursday, Friday, Saturday};
여기서 일요일은 0, 월요일은 1, 화요일은 우리가 할당 한 값 5를 갖습니다. 화요일 이후에는 나머지 값이 6, 7 등으로 이전 값 (이 경우 5)과 계속됩니다.
다음 프로그램에서 앞서 선언 한이 열거 형을 사용하겠습니다.
#include using namespace std; enum daysOfWeek {Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday}; int main() { daysOfWeek today; today = Thursday; cout<<'This is day '< 산출:
이번주의 4 일차입니다.
동일한 스크린 샷은 아래와 같습니다.
위의 프로그램은 자명합니다. 열거 형을 정의한 다음 요일을 출력하는 유형 변수를 만듭니다.
수업
C ++에서는 'Class'라는 또 다른 사용자 정의 유형을 정의 할 수 있습니다. 클래스는 객체 모음 일뿐입니다. 클래스는 객체에 대한 청사진 역할을하며 클래스 정의를 사용하여 다양한 실시간 문제를 설계 할 수 있습니다.
배열을받는 메서드
예를 들어, 다음과 같이 정의되는 'Student'라는 클래스를 고려하십시오.
class student{ char* name; int age; public: void printDetails() { cout<<”Name: “<이 클래스를 정의했으면 클래스 이름을 사용하여 클래스 유형의 변수를 선언 할 수 있습니다. 클래스 유형의 이러한 변수는 객체에 불과합니다.
따라서 다음과 같이 student 유형의 객체를 선언합니다.
student s1; s1.printDetails();
위와 같이 공개 된이 클래스의 멤버에도 액세스 할 수 있습니다. C ++에서 객체 지향 프로그래밍을 다룰 때 클래스와 객체를 자세히 살펴 보겠습니다.
구조
C ++의 구조는 C>의 구조와 유사합니다. 사실, C ++의 구조 개념은 C 언어에서 직접 선택되었습니다. 클래스로서 구조는 다양한 데이터 유형의 변수 모음이기도합니다. 그러나 클래스에는 이러한 변수 또는 멤버를 호출 할 때 작동하는 변수와 메서드가 모두 있습니다.
반면 구조는 멤버로 변수 만 있습니다.
struct 키워드를 사용하여 다음과 같이 구조 사람을 정의 할 수 있습니다.
struct employee{ Char name(50); Float salary; Int empId; };
구조가 정의되면 다음과 같이 struct 유형의 변수를 선언 할 수 있습니다.
Employee emp;
그런 다음 구조 변수와 멤버 액세스 연산자 (점 연산자)를 사용하여 구조의 멤버에 액세스 할 수 있습니다.
결론
C ++에서 객체 지향 프로그래밍을 시작하면 구조와 클래스, 그리고 이들 간의 차이점에 대해 자세히 알아볼 것입니다.
다가오는 자습서에서는 C ++ 변수 및 기타 측면을 살펴볼 것입니다.
추천 도서