como evitar perder aspas duplas em argv?

Ok, eu sei que posso fazer loop assim:

for (int i=1; i<=argc-1;i++) {
  cout << argv[i] << endl;
}

Mas desta forma aspas duplas são perdidas, isto é, uma string"something here" é tratado como um elemento do array args e aspas são perdidas.

Ok, eu sei que posso assumir aspas se o parâmetro tiver espaço dentro, mas as citações são sempre perdidas, não importa se há espaço ou não.

questionAnswers(2)

yourAnswerToTheQuestion