Difference between revisions of "Code Snippet: User Input-Single Line"

From Coder Merlin
(Added Common Lisp single-line user-input)
Line 48: Line 48:
}
}


</syntaxhighlight>
== Common Lisp ==
<syntaxhighlight lang="lisp">
(defvar input)
(setq input (read-line))
(loop while (not input)
  do (setq input (read-line))
  )
(format t "You typed: ~(~s~) ~%"
      input)
</syntaxhighlight>
</syntaxhighlight>

Revision as of 15:10, 11 September 2019

Within these castle walls be forged Mavens of Computer Science ...
— Merlin, The Coder

Reading a single line of text from the console[edit]

Note: Input read from the console is terminated with a ^D (Control-D) which indicates the end-of-file.

Swift[edit]

// Read a single line of input from the console
let line = readLine()            // This will return an optional string
if line != nil {                 // Let's check if it's not nil, if so, it's really a string
    let text = line!             // Unwrap the string
    print("You typed: \(text)")  // Print the string
}
// Read a single line of input from the console (syntactic sugar)
if let text = readLine() {
    print("You typed: \(text)")
}

Python[edit]

try:
    text = input()
except:
    text = ""
print("You typed: %s" %text)

C[edit]

#include <stdio.h>

int main(void){

  char line_buffer[64]; // Declare character array capable of holding 63 characters

  // Read input from stdin via fgets
  // check fgets return for NULL if EOF is passed
  if(fgets(line_buffer,64,stdin) == NULL){
    return 0; // Indicate successful run to the OS
  }  
  printf("You typed: %s\n",line_buffer); //Output input

  return 0; // Indicate a successful run to the OS
}

Common Lisp[edit]

(defvar input)

(setq input (read-line))

(loop while (not input)
  do (setq input (read-line))
  )

(format t "You typed: ~(~s~) ~%"
      input)