내 프로그램에서 표현식을 요구하고 입력 된 문자열을 변수 'exp'에 할당 한 다음 표현식을 인쇄하길 원합니다.입력 문자열을 할당하고 변수에 인쇄하십시오. Lisp
그러나 몇 가지 문제가 있습니다. 나는 처음으로 (읽기)를 사용하여 시도했다.
(princ "Enter a expression to be evaluated.")
(setf exp (read))
(princ exp)
그러나이 코드를 사용할 때이 문제가 발생한다.
Hello this is an expression ;This is what I input
Enter a expression to be evaluated.HELLO
T
그런 다음 (read-line) 사용하려고 시도했지만, 이렇게하면 입력을 전혀 요구하지 않는 것 같습니다.
(princ "Enter a expression to be evaluated.")
(setf exp (read-line))
(princ exp)
는
Enter a expression to be evaluated.
T
이 프로그램은 바로 종료 가져옵니다.
내가 실행할 때 내가 그러나이
(defun get-input (prompt)
(clear-input)
(write-string prompt)
(finish-output)
(setf exp (read-line)))
(get-input "Enter an expression: ")
(princ exp)
와 함께 온 몇 가지 답변 후이 다음이이 질문의 종류
My first sentence ;My first input
Enter an expression: My second sentence ;it then asks for input, i do so
My second sentence ;my second input is printed back at me
T
'exp'는 선언되지 않은 것입니다. Common Lisp에서 변수를 선언해야합니다. –
어떻게 선언합니까? 나는 그것이 자동적으로 선언 된 줄 알았다. – sam
'LET','LET *','DEFUN','LAMBDA','DEFVAR','DEFPARAMETER' ... –