crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> QString -> char
Гость_Игорь_*
сообщение 30.10.2010, 18:02
Сообщение #1





Гости








    


Здравствуйте, программисты!
Вот сложность возникла. Нужно написать прогу кроссплатформенную на Qt, но там не все прокатывает, что прокатывает в обычном С++. Вот код:

    string user="Строчка";
    char* qwe1;
    int i=0;
    for(i=0;user[i]!=0;i++){};
    qwe1=new char[i];
    for(int j=0;user[j]!=0;j++)qwe1[j]=user[j];


В обычном си++ компилит нормально и запускается, а здесь компилятор ругается. Он показывает на последнюю строчку и пишет "cannot convert "QCharRef' to 'char' in assignment". Что делать?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Гость_Игорь_*
сообщение 30.10.2010, 19:09
Сообщение #2





Гости








    


int main(int argc, char *argv[])
{
    const char* user[]={"Администратор"};
    const char* pass[]={"123"};
    const char* qwe2[]={"net user "};
    const char* a[]={" "};
    int i=0;
    for(i=0;user[i]!=0;i++)qwe2[9+i]=user[i];
    i=i+9;
    for(int j=0;a[j]!=0;j++)qwe2[i+j]=a[j];
    i++;
    int j=0;
    for(j=0;pass[j]!=0;j++)qwe2[j+i]=pass[j];

    //system(qwe2);

    return 0;
}
}


При отладочной компиляции:
Цитата
Приложение остановлено, так как оно получило сигнал от операционной системы.
Сигнал: SIGSEGV
Назначение: Segmentation fault


При обычной компиляции:
Цитата
Запускается С:\Qt\2010.05\qt\Clients-build-desktop\debucj\Clients.exe...
C:\Qt\2010.05\qt\C3^ents-huild-desktop\dehutj\Clients.exe завершился с кодон -1073741819


Если убрать комментарии с system(qwe2); то ошибка: "cannot convert 'const char**' to 'const char*' for argument 'Г to 'int system(const char*)'"
Убираю со всех переменных слово const, ошибка "cannot convert char** to const char* for argument 1 to int system(const char*)"
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Гость_Игорь_*
сообщение 30.10.2010, 19:11
Сообщение #3





Гости








    


Сигнал был где первый цикл for(i=0;user[i]!=0;i++)qwe2[9+i]=user[i];
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


8 чел. читают эту тему (гостей: 8, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 30.1.2025, 6:04