변수 쓸 때 숫자는 Int, Double로 다양하게 받으면서, 왜 문자는 String으로 퉁치죠?

2024. 7. 30. 18:08·CS/짤막지식

나 정말 이유가 궁금해

정수형 (Int)

  • 고정된 메모리 크기: 정수형 데이터는 고정된 메모리 크기를 사용함.
    • 예: 대부분의 언어에서 32비트(4바이트) 또는 64비트(8바이트)임.

실수형 (Double)

  • 고정된 메모리 크기: 실수형 데이터도 고정된 메모리 크기를 사용함 그리고 보통 정수형의 2배 가까이를 필요로 함.
    • 예: 대부분의 언어에서 64비트(8바이트)임.

문자열 (String)

  • 가변 메모리 크기: 문자열은 길이에 따라 메모리 크기가 가변적임.
    • 각 문자의 크기는 인코딩 방식에 따라 다르지만, 일반적으로 UTF-16에서는 문자당 2바이트(16비트)를 사용함.
    • 예: "hello"는 5 * 2바이트 = 10바이트임.

 

자료형 메모리 크기 예시 크기 (바이트)
정수형(Int) 고정 크기 32비트(4바이트) 또는 64비트(8바이트)
실수형(Double) 고정 크기 64비트(8바이트)
문자열(String) 가변 크기 길이에 따라 다름, "hello"는 10바이트 (UTF-16 기준)

 

 

결론 

컴퓨터는 딱딱 정해주는게 좋음. 가변적일수록 안좋음.

그래서 타입을 정해줌으로써 메모리 이만큼 쓴다잉? ㅋㅋ하고 말해주는거임.
Int, Double은 메모리 크기를 고정으로 씀. 
문자열은 고정해놓지않고 가변하게 처리하는데 연산을 비효율적으로 만들더라도 이게 더 유리하다고 생각하는거.

 

'CS > 짤막지식' 카테고리의 다른 글

2. 자료구조 / 알고리즘 - 코드  (1) 2024.10.28
WebRTC with ChatGPT  (2) 2024.10.02
restful API vs websocket  (0) 2024.09.25
2. webRTC의 SDP, ICE, 시그널링에 대해서  (0) 2024.09.20
1. webRTC 기초 정리  (0) 2024.09.19
'CS/짤막지식' 카테고리의 다른 글
  • WebRTC with ChatGPT
  • restful API vs websocket
  • 2. webRTC의 SDP, ICE, 시그널링에 대해서
  • 1. webRTC 기초 정리
복복씨
복복씨
개발자여, 사고하라 !
  • 복복씨
    정리노트
    복복씨
  • 전체
    오늘
    어제
    • 분류 전체보기 (118)
      • 개발새발자 (21)
        • 의 삶 (7)
        • 의 회고 (9)
        • 의 낙서장 (5)
        • 영어 (0)
      • FrontEnd (1)
        • React (1)
      • Flutter (38)
        • 새싹 (5)
        • Dart (8)
        • Flutter (14)
        • iOS 에서 Flutter 로 전환하며 (2)
        • 챗지피티랑놀.기 (3)
        • 하루 한 입 플러터 (2)
      • CS (7)
        • 짤막지식 (6)
      • IOS (6)
        • Swift (0)
        • UIKit (1)
        • SwitUI (4)
      • 머신러닝-딥러닝 (28)
        • 논문리뷰 (3)
        • study (16)
        • Kaggle (9)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    swiftui 플러터
    용산캠
    핫 리로드
    futurerecord2
    새싹
    flutter 애니메이션
    한주 회고
    플러터 di
    flutter lottie
    플러터 새싹
    코드 결합도
    테킷 앱스쿨
    플러터
    runzonedguarded
    dart
    새싹 용산
    IOS
    Flutter Lifecycle
    부트캠프
    새싹 플러터
    expando
    getit
    멋쟁이 사자처럼
    schedulemicrotask
    initState()
    unawaited
    시그널링데이터
    FLUTTER
    사그널링서버
    깊은참조
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
복복씨
변수 쓸 때 숫자는 Int, Double로 다양하게 받으면서, 왜 문자는 String으로 퉁치죠?
상단으로

티스토리툴바