void RevStr(char* S,int l)
{
char c;
if (l > 1)
{
c=S[0];
S[0]=S[l-1];
S[l-1]=c;
RevStr(S+1,l-2);
}
}
int main(int argc, char* argv[])
{
textBox1->Text = "Text_new";
char s[14];
s = textBox1->Text;
RevStr(S,14);
TextBox2->Text = s;
return 0;
}
Может кто-нибудь направить на путь истинный?
#include <QApplication>
#include <QWidget>
#include <QGridLayout>
#include <QLabel>
#include <QLineEdit>
#include <algorithm>
class Widget : public QWidget
{
Q_OBJECT
public:
Widget() {
gridLayout = new QGridLayout(this);
labelString = new QLabel(tr("String:"));
labelRevertString = new QLabel(tr("Revert string:"));
lineEdit[0] = new QLineEdit();
lineEdit[1] = new QLineEdit();
gridLayout->addWidget(labelString, 0, 0);
gridLayout->addWidget(labelRevertString, 0, 1);
gridLayout->addWidget(lineEdit[0], 1, 0);
gridLayout->addWidget(lineEdit[1], 1, 1);
connect(lineEdit[0], SIGNAL(textEdited(QString)),
this, SLOT(slotTextChanged(QString)));
connect(lineEdit[1], SIGNAL(textEdited(QString)),
this, SLOT(slotTextChanged(QString)));
}
virtual ~Widget() {}
private:
QGridLayout *gridLayout;
QLabel *labelString;
QLabel *labelRevertString;
QLineEdit *lineEdit[2];
private slots:
void slotTextChanged(QString aString) {
std::reverse(aString.begin(), aString.end());
lineEdit[lineEdit[0]->hasFocus()]->setText(aString);
}
};
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Widget widget;
widget.setFixedSize(widget.sizeHint());
widget.show();
return a.exec();
}
#include "moc_main.cpp"