Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
GetMeHelp
16 / 16 / 3
Регистрация: 01.03.2013
Сообщений: 130
1

Исправить множественные ошибки типа "This function or variable may be unsafe"

01.03.2013, 21:47. Просмотров 1111. Ответов 5
Метки нет (Все метки)

помогите исправить апшибки
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <locale>
 
FILE* FileOpen(char* path)
{
    /*FILE* PFile;
    PFile = fopen(path, "w");*/
    return(fopen(path, "w"));
}
 
void FileRead(FILE* PFile, int* mas, int count)
{
    int i;
    for (i = 0; i < count; i++)
        fscanf(PFile, "%d", &mas[i]);
}
 
void FileSave(FILE* PFile, int* mas, int count)
{
    int i, s;
    s = 0;
    for (i = 0; i < count; i++)
    {
        srand(time(NULL));
        if (mas[i] = 0) mas[i] = rand()%20;
        fprintf(PFile, "%d", mas[i]);
        if (i % 2 == 0) s = s + mas[i]; else s = s - mas[i];
    }
    fprintf(PFile, "S = %d", s);
}
 
void FileClose(FILE* PFile)
{
    fclose(PFile);
}
 
void main()
{
    setlocale(LC_ALL, "RUSSIAN");
    const int n = 20;
    int* a[n], s, i;
    FILE* InFile, OutFile;
    char* InFileName, OutFileName;
    printf("'IN' file name");
    scanf("%d", &InFileName);
    printf("'OUT' file name");
    scanf("%d", &OutFileName);
    InFile = FileOpen(InFileName);
    OutFile = FileOpen(OutFileName);
    FileRead(InFile, a[n], n);
    FileSave(OutFile, a[n], n);
    FileClose(InFile);
    FileClose(OutFile);
    getch();
}
Кликните здесь для просмотра всего текста
1>------ Построение начато: проект: lab10_a, Конфигурация: Debug Win32 ------
1>Компиляция...
1>lab10_a.cpp
1>c:\documents and settings\user\мои документы\visual studio 2008\projects\lab10\lab10_a\lab10_a\lab10_a.cpp(10) : warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> d:\program files\microsoft visual studio 9.0\vc\include\stdio.h(237): см. объявление 'fopen'
1>c:\documents and settings\user\мои документы\visual studio 2008\projects\lab10\lab10_a\lab10_a\lab10_a.cpp(17) : warning C4996: 'fscanf': This function or variable may be unsafe. Consider using fscanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> d:\program files\microsoft visual studio 9.0\vc\include\stdio.h(256): см. объявление 'fscanf'
1>c:\documents and settings\user\мои документы\visual studio 2008\projects\lab10\lab10_a\lab10_a\lab10_a.cpp(26) : warning C4244: аргумент: преобразование 'time_t' в 'unsigned int', возможна потеря данных
1>c:\documents and settings\user\мои документы\visual studio 2008\projects\lab10\lab10_a\lab10_a\lab10_a.cpp(47) : warning C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> d:\program files\microsoft visual studio 9.0\vc\include\stdio.h(306): см. объявление 'scanf'
1>c:\documents and settings\user\мои документы\visual studio 2008\projects\lab10\lab10_a\lab10_a\lab10_a.cpp(49) : warning C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> d:\program files\microsoft visual studio 9.0\vc\include\stdio.h(306): см. объявление 'scanf'
1>c:\documents and settings\user\мои документы\visual studio 2008\projects\lab10\lab10_a\lab10_a\lab10_a.cpp(51) : error C2664: FileOpen: невозможно преобразовать параметр 1 из 'char' в 'char *'
1> Для преобразования из целого типа в указатель требуется reinterpret_cast, приведение в стиле С или приведение в стиле функции
1>c:\documents and settings\user\мои документы\visual studio 2008\projects\lab10\lab10_a\lab10_a\lab10_a.cpp(53) : error C2664: FileSave: невозможно преобразовать параметр 1 из 'FILE' в 'FILE *'
1> Для выполнения данного преобразования нет доступного оператора преобразования, определенного пользователем, или вызов оператора невозможен
1>c:\documents and settings\user\мои документы\visual studio 2008\projects\lab10\lab10_a\lab10_a\lab10_a.cpp(55) : error C2664: FileClose: невозможно преобразовать параметр 1 из 'FILE' в 'FILE *'
1> Для выполнения данного преобразования нет доступного оператора преобразования, определенного пользователем, или вызов оператора невозможен
1>Журнал построения был сохранен в "file://c:\Documents and Settings\user\Мои документы\Visual Studio 2008\Projects\lab10\lab10_a\lab10_a\Debug\BuildLog.htm"
1>lab10_a - ошибок 3, предупреждений 5
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.03.2013, 21:47
Ответы с готовыми решениями:

This function or variable may be unsafe
Всем привет! проблема такая, клиент-серверное приложение было изначально написано под unix. я решил...

Ошибка программы: This function or variable may be unsafe
Ошибка 1 error C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s...

Error C4996: 'scanf': This function or variable may be unsafe
error C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To...

Warning C4996: 'scanf': This function or variable may be unsafe
#include&lt;stdio.h&gt; #include&lt;math.h&gt; void main() { int a,b,c ; printf(&quot;Enter a&quot;); scanf(&quot;%d&quot; ,...

Error C4996: 'fopen': This function or variable may be unsafe
уважаемые программисты, ранее мне не приходилось сталкиваться с записью в файл. написала, как мне...

5
D@n
1 / 1 / 3
Регистрация: 01.03.2013
Сообщений: 22
01.03.2013, 23:52 2
C
1
2
    FILE* InFile, *OutFile;
    char* InFileName, *OutFileName;
0
GetMeHelp
16 / 16 / 3
Регистрация: 01.03.2013
Сообщений: 130
02.03.2013, 08:16  [ТС] 3
Цитата Сообщение от D@n Посмотреть сообщение
C
1
2
    FILE* InFile, *OutFile;
    char* InFileName, *OutFileName;
спасибо помогло, но теперь когда скомпилировалось выдает ошибку при вводе 'In' name, что то типа "память не может быть read"
0
GetMeHelp
16 / 16 / 3
Регистрация: 01.03.2013
Сообщений: 130
03.03.2013, 22:23  [ТС] 4
АУ ЛЮДИ !!! СРОЧНО НАДО !!!

Добавлено через 8 часов 55 минут
ПОЧЕМУ МЕНЯ ИГНОРЯТ???
0
Korhall
7 / 7 / 2
Регистрация: 02.03.2013
Сообщений: 69
04.03.2013, 17:10 5
Дома гляну и отпишусь.
0
Hunter13ua
46 / 46 / 18
Регистрация: 25.10.2011
Сообщений: 183
05.03.2013, 15:00 6
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <locale>
FILE* FileOpen(char* path)
{
    /*FILE* PFile;
    PFile = fopen(path, "w");*/
    return(fopen(path, "w"));
}
 
void FileRead(FILE* PFile, int* mas, int count)
{
    int i;
    for (i = 0; i < count; i++)
        fscanf(PFile, "%d", &mas[i]);
}
 
void FileSave(FILE* PFile, int* mas, int count)
{
    int i, s;
    s = 0;
    for (i = 0; i < count; i++)
    {
        srand(time(NULL));
        if (mas[i] == 0) mas[i] = rand()%20;
        fprintf(PFile, "%d", mas[i]);
        if (i % 2 == 0) s = s + mas[i]; else s = s - mas[i];
    }
    fprintf(PFile, "S = %d", s);
}
 
void FileClose(FILE* PFile)
{
    fclose(PFile);
}
 
void main()
{
    const int n = 20;
    int *a[20], s, i;
    FILE *InFile, *OutFile;
    char InFileName[30], OutFileName[30];
    setlocale(LC_ALL, "RUSSIAN");
    printf("'IN' file name: ");
    scanf("%s", InFileName);
    printf("'OUT' file name: ");
    scanf("%s", OutFileName);
    InFile = FileOpen(InFileName);
    OutFile = FileOpen(OutFileName);
    FileRead(InFile, a[n], n);
    FileSave(OutFile, a[n], n);
    FileClose(InFile);
    FileClose(OutFile);
    getch();
}
Мне лень делать динамические переменные. Код рабочий.
0
05.03.2013, 15:00
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.03.2013, 15:00

Ошибка 1 error C4996: 'fopen': This function or variable may be unsafe
есть такой код: // Лабораторная №5.cpp: определяет точку входа для консольного приложения. // ...

Ошибка: error C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead.
подскажите плиз в чем проблема? #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;iostream&gt; int...

Проверить каким является число "составным" или "простым" (найти и исправить ошибки в коде)
В чем ошибка? Мне нужно ввести число и программа должна указать каким является число &quot;Составным&quot;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru