#include <cstring>
#include <iostream>
#include <sstream>
#include <string>
#include <unistd.h>
int main()
{
while (true)
{
    int argc = 0;
    std::istringstream iss;
    std::string command;
    std::cout << "$> ";
    getline(std::cin, command);
    iss.str(command);
    for (unsigned i = 0; i <= command.length(); i++)
    {
        if (command[i] == ' ' || command[i] == '\0')
        {
            argc++;
        }
    }
    std::string arr[argc+1];
    for (int i = 0; i < argc; i++)
    {
        iss >> arr[i];
    }
    if (!arr[0].compare("quit"))
    {
	std::cout << "break:" << std::endl;
        break;
    }
    else
    {
        char* argv[argc+1];
        for (int i = 0; i < argc; i++)
        {
            argv[i] = const_cast<char*>(arr[i].c_str()); //This line is wrong
        }
        argv[argc] = NULL;
        execvp(argv[0], argv);
    }
}
return 0;
}