On a real device, running an iOS app, via Xcode the following lldb commands output to the Xcode console as expected:
(lldb) exp (void)NSLog(@"hello from NSLog");
(lldb) exp (int)printf("hello from printf");
On a real device + Terminal, these commands send no output to the screen.  Even if you flush the screen (as recommended here: How can I see printf output when evaluating an expression using the `expr` command in lldb?).
Am I missing a lldb settings command or environment variable?
That said, on a real iOS device + Terminal you can still use the python-lldb scripting commands:
(lldb) script print("hello")
hello
PS - I tried with both zsh and a default bash terminal.
 
    