묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
강사님의 형변환결과값이랑 저의 형변환결과값이 다른경우...ㅠㅠ
=========================================[질문 내용]public class Casting3 { public static void main(String[] args) { long maxIntValue= 2147483647; //int 최고값 long maxIntOver= 21474836478L; //int 최고값 + 1(초과) int intValue=0; intValue = (int) maxIntValue; // 형변환 System.out.println("maxValue Casting= "+ intValue); intValue = (int) maxIntOver; //형변환 System.out.println("maxIntOver Casting = " + intValue); } } 근데 저의 결과값은 ..... 이렇게 나오는 이유가 있을까요?
-
미해결프로그래밍 시작하기 : 도전! 45가지 파이썬 기초 문법 실습 (Inflearn Original)
list로 형변환 할때 'list' object is not callable 오류가 나요
알려주신 대로 실행해봤는데x = ["a", 1, "b", 2, "a", 3, "b", 4, 5, "b"]a = list(set(x))print(a)list에서 오류가 나면서 'list' object is not callable 라고 뜹니다a를 list로 형변환 안하면 오류가 안 납니다왜 그런 걸까요
-
해결됨홍정모의 따라하며 배우는 C++
1:52 typeid() 리터럴의 데이터타입 출력
저 같은 경우 한 글자만 출력이 되는데,예를 들어 Int는 i이 부분을 바꿀 수 있나요 ? 코드는 아래와 같습니다.#include <iostream> #include <typeinfo> int main() { using namespace std; int a = 123; cout << typeid(a).name() << endl; return 0; }
-
해결됨홍정모의 따라하며 배우는 C언어
17:00 부분 char형 변수 c에 1106 대입 [overflow와 형 변환 간 개념 혼동]
강의 17:00 부분에서 char 타입의 변수 c에 int 타입 10진수 1106을 대입했습니다.char 타입은 1byte 이므로 표현 범위가 -128 ~ 127까지 이며 ASCII 코드의 최대 변환가능한 10진수 decimal도 127입니다.강의에서는 1106을 2진수로 변환하면 0b10001010010, 이걸 다시 char타입의 2진수로 변환하면 0b01010010, 이걸 다시 10진수로 변환하면 82이며 결국 'R'이 된다고 하는데, 왜 overflow가 발생하지 않고, 형 변환이 일어나는 건가요?제가 이해하기로는 이렇습니다.큰 자료형 L-value = 작은 자료형 R-value작은 자료형을 큰 자료형에 넣을 때는 경고는 뜨지만 출력하고, 표현하는데에는 문제가 없고 이것은 promotion이라는 형 변환이 일어납니다.작은 자료형 L-value = 큰 자료형 R-value큰 자료형을 작은 자료형에 넣을 때는 큰 자료형의 R-value 값이 작은 자료형의 표현 범위 안에만 속한다면, demotion되는 형 변환이 일어납니다.※하지만, 큰 자료형을 작은 자료형에 넣을 때 큰 자료형인 R-value 값이 작은 자료형의 표현범위를 넘어선다면, overflow가 발생하게 된다고 이해했습니다.1. overflow와 형 변환의 개념을 각각 알고 있지만, char 타입 변수 c를 볼 때 c = 1106에서 1106이 (char타입의 최대 표현범위인 127을 넘는) 10진수임에도 불구하고, overflow가 아니라 형 변환이 되어 'R'이 출력되는 이유를 모르겠습니다.2. 제가 이해한 내용이 맞는지 확인해주시면 감사하겠습니다.
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
변수에 상수값 대입 시 어셈블리어와 c++의 차이점
안녕하세요. 어셈블리어 코드에서는 변수에 상수값을 대입 시 mov [a], byte 0x55 처럼 해당 상수의 크기(자료형)를 명시해주어야하고 C++에서는 char c = 100; 와 같이 상수값의 자료형을 명시해주지 않는데요. 이때 100에 커서를 가져가보면 인텔리센스에서는 (int)100 이라고 나오는데, 그렇다면 C++에서 정수 상수는 어셈블리어에서처럼 상수의 크기를 명시해주는 부분이 생략되고 자동으로 int로 취급되는 것인가요? 그리고 이러한 (int)100을 char 변수에 대입하면 char 타입으로 묵시적(implicit) 형변환(type promotion)이 일어나며 char 변수에 저장되는 건가요?
-
미해결
자바 자료형, 형변환 관련 질문드립니다.
-Java 1.8.0_321 - eclipse - 주민등록번호 앞, 뒤 나누기 및 성별확인 체크 - pin.charAt(7) 부분을 바로 프린트시 1이 나오는데 - int i = pin.charAt(7)로 하여서 프리트하니 49가 나옵니다. - 왜 그런지 이해가 안 가네요 - String i = pin.charAt(7)로 하였을 시에는 오류가 났습니다. public class Mainclass { public static void main(String[] args) { String pin = "981120-1234567"; String yyyyMMdd = pin.substring(0,6); String num = pin.substring(7); System.out.println(yyyyMMdd); System.out.println(num); int i = pin.charAt(7); System.out.println(i); System.out.println(pin.charAt(7)); } } ----------------------------------------- 981120 1234567 49 1
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
강의 자료에 오타가 있는 것 같아서 남깁니다
안녕하세요, 재미있게 강의 듣고있습니다. 강의자료 (python 예제 파일에서) annotation(주석)이 잘못 달려있는 것 같아서 문의드립니다. chapter03_01.py 의 L141-150 에서 형변환이라는 중요한 주제를 다뤄주시는데, print(int(True)) # Bool -> 정수 print(float(True)) # Bool -> 실수 (False) 부분도 마찬가지 여야 하는 것으로 이해했는데, 예제파일 주석에는 int, float 둘다 # Bool -> 정수 라고 명시되어있는 것으로 확인됩니다. 답변 주시면 감사하겠습니다. 감사합니다.
-
미해결몇 줄로 끝내는 인터랙티브 웹 개발 노하우 [초급편]
자바스크립트 문자열과 숫자 결합 형변환
안녕하세요, 이 부분에서 h1.innerHTML = "x: " + e.clientX + " y: " + e.clientY; 스트링이랑 e.clientX와 e.clientY를 바로 이은 걸 보고 console.log(typeof(e.clientX)); 찍어 보니까 `e.clientX`는 Number라고 나오는데 자바스크립트에서는 문자열과 숫자를 형변환 없이 그대로 결합해도 상관 없나요? 읽어 주셔서 감사합니다.