samedi 13 juillet 2019

Why can't I provide a string argument to printw in ncurses?

For an application that I'm writing, I have a string type variable that I want to display within an ncurses window:

#include <iostream>
#include <ncurses.h>
#include <string>

int main(){
  std::string mystring = "A sample string\n";

  // Entering the ncurses window
  initscr();
  printw(mystring);
  getch();
  endwin();

}

which throws the following error at compilation:

test_app.cpp: In function ‘int main()’:
test_app.cpp:12:18: error: cannot convert ‘std::__cxx11::string {aka std::__cxx11::basic_string<char>}’ to ‘const char*’ for argument ‘1’ to ‘int printw(const char*, ...)’
   printw(mystring);

Where am I going wrong? How can I rectify this?

Aucun commentaire:

Enregistrer un commentaire