Форум программистов, компьютерный форум CyberForum.ru

Ошибка в коде - C++

Восстановить пароль Регистрация
 
Divil
8 / 8 / 2
Регистрация: 11.04.2012
Сообщений: 611
06.05.2013, 22:51     Ошибка в коде #1
Прветствую всех!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
printf("Введите расположение файла (например: C:\\myfile.txt):/n");
    char * s;
    scanf("%s", &s);
    
    FILE * doc;
    doc = fopen(s, "a");
    if(doc != NULL)
    {
        printf("Введите строку для записи:/n");
        char * str;
        scanf("%s", &str);
        fprintf(doc,"%s", str);
        fclose(doc);
        printf("Запись осуществлена!");
    }
    getch();
вот код накалякал...но почему то не работает, и ошибка появляется
Bash
1
error C2040: s: "char *" отличается по уровням косвенного обращения от "char"   c:\users\admin\documents\visual studio 2010\projects\c++\oc\oc\main.cpp
в чем проблема? объясните пожалуйста! Срочно надо!!!
Заранее благодарен!!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.05.2013, 22:51     Ошибка в коде
Посмотрите здесь:

C++ ошибка в коде
C++ ошибка в коде.
C++ ошибка в коде
Ошибка в коде. C++
C++ Ошибка в коде
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
06.05.2013, 22:55     Ошибка в коде #2
Цитата Сообщение от Divil Посмотреть сообщение
char * s;
* * scanf("%s", &s);
проблема в том,что вы передаете не ссылку на s, а ссылку указателя на s

Добавлено через 1 минуту
Попробуйте передать просто
C++
1
scanf("%s", s);
Divil
8 / 8 / 2
Регистрация: 11.04.2012
Сообщений: 611
06.05.2013, 23:00  [ТС]     Ошибка в коде #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
char s, str;
    printf("Введите расположение файла (например: C:\\myfile.txt):/n");
    scanf("%s", &s);
    
    FILE * doc;
    doc = fopen(s, "a");
    if(doc != NULL)
    {
        printf("Введите строку для записи:/n");
        scanf("%s", &str);
        fprintf(doc,"%s", str);
        fclose(doc);
        printf("Запись осуществлена!");
    }
    getch();
исправил, другая ошибка
Bash
1
аргумент типа "char" несовместим с параметром типа "const char *"   c:\users\admin\documents\visual studio 2010\projects\c++\oc\oc\main.cpp
Добавлено через 2 минуты
и кстати почему не отображается второй слэш:
C++
1
printf("Введите расположение файла (например: C:\\myfile.txt):/n");
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
06.05.2013, 23:07     Ошибка в коде #4
"%s"-это строка, а char-это символ
Vacsus
1 / 1 / 1
Регистрация: 28.04.2013
Сообщений: 8
06.05.2013, 23:10     Ошибка в коде #5
и кстати почему не отображается второй слэш:
Потому что обратный слэш - признак управляющего символа (как например \n, и да у тебя там не в ту сторону слэш)
Чтобы отобразилось 2 палки нужно написать "\\\\"
Divil
8 / 8 / 2
Регистрация: 11.04.2012
Сообщений: 611
06.05.2013, 23:59  [ТС]     Ошибка в коде #6
хмм...
Yandex
Объявления
06.05.2013, 23:59     Ошибка в коде
Ответ Создать тему
Опции темы

Текущее время: 21:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru