Ламерский вопрос по C++. Почему cout не печатает строку?

С++ cout

Вот собственно код:

#include <iostream>
#include <string>
#include <stack>

using namespace std;

int main()
{
int t;
cin >> t;
stack <char>ST;
while (t--)
{
string inStr,outStr;
int j=0; //counter for output string
cin >> inStr;
//operations +,-,*,/,^
//characters a..z
for (int i=0; i<inStr.length(); i++)
{
if ((inStr[i]>='a') && (inStr[i]<='z')) {outStr[j]=inStr[i]; j++;}
}
//pop all sym from stack
outStr[j]='\0';
cout << "+++++++++++++++++++++"<<endl;
cout << outStr <<endl; //вот эта команда ничего не выводит =(
}
return 0;
}

Примечание:
И без '\0' и с ним, не работает.....

Примечание:
Аргентум, большое спасибо за ответ =) Стэк тут нужен, т.к. это программа еще не дописана =) В самом деле вот задача которую я решаю http://www.spoj.pl/problems/ONP/
Ответы:
попробуйтей убрать вот это outStr[j]='\0'; Зачем вам 2 нулевых символа в конце массива?)
Потому что строка пустая.


14 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.