우리는 왜 왜 대부분의 프로그래밍 언어는 쉼표를 수락합니까?
int n=1,000;
을 쓸 수 없습니다?
프로그래밍 언어가 쉼표를 허용하도록 설계되지 않은 이유는 무엇입니까? 쉼표를 사용할 수 있다면 문제가 발생합니까?
우리는 왜 왜 대부분의 프로그래밍 언어는 쉼표를 수락합니까?
int n=1,000;
을 쓸 수 없습니다?
프로그래밍 언어가 쉼표를 허용하도록 설계되지 않은 이유는 무엇입니까? 쉼표를 사용할 수 있다면 문제가 발생합니까?
,
은 대다수의 언어에서 연산자 또는 특수한 의미가 있기 때 문입니다.
따라서 setColor(4,242,242)
이 세 개의 인수 (4, 242 및 242) 또는 단일 인수 (4242242)를 가진 호출인지 여부를 파악하는 것은 어렵거나 불가능합니다.
Swift와 같은 일부 언어는 쉽게 읽을 수 있도록 _
으로 숫자를 허용합니다. 예를 들어 1_000
은 1000
과 같습니다.
구문 분석에 대한 자세한 내용은 the Wikipedia article Lexical analysis을 읽어 보시기 바랍니다.
인수에 좋은 지적 !!! – Gqqnbig
많은 언어에서 쉼표는 어떤 형태의 언어 구조로 취급됩니다. 배열의 예를 들면 다음과 같습니다
var array = [0,1,2,3,4];
또는 일부의 경우 인라인 문자열 연결에
:var string1 = "yay";
var string2 = "me";
var output = string1, string2;
다른 언어는 다른 구현이있다. 항상 쉼표로 사용자 입력을 "수정"하기 위해 정규 표현식을 사용할 수 있습니다.
변수에 반드시 쉼표를 사용해야한다면 아마 문자열을 사용해야 할 것입니다. 그런 다음 정규 표현식이나 사용중인 언어의 parseAsInt()를 사용하여 숫자로 변환 할 수 있습니다. 또는 parseAsFloat(); 동등한.
Swith에서 '_'을 (를) 사용할 수 있습니다. 'let n = 1_000' –
정수 리터럴에서 내가 사용했던 대부분의 언어가 '_'을 지원한다고 생각합니다. 필자는 메서드/함수 호출에서 매개 변수를 구분하기 위해 쉼표를 사용합니다. 따라서 쉼표를 숫자로 사용하면 컴파일러와 독서 코드에 혼란이 생길 수 있습니다. – Sweeper
구문에 대해 예약 된 문자이기 때문에 – kurakura88