| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2082 人关注过本帖
标题:C语言初学者,visual studio2015 环境下,项目:win32控制台应用程序,使用 ...
只看楼主 加入收藏
cityrunner
Rank: 2
等 级:论坛游民
帖 子:26
专家分:33
注 册:2016-1-22
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:7 
C语言初学者,visual studio2015 环境下,项目:win32控制台应用程序,使用打开文件及其它函数出现错误,求大神解决及解释。
#include <stdio.h>
#include <string.h>
int main()
{
    FILE *fp = fopen_s("1.txt", "a+");
    if (fp == 0) { printf("can't open file\n"); return 0; }
    fseek(fp, 0, SEEK_END);
    char sz_add[] = "hello world\n";
    fwrite(sz_add, strlen(sz_add), 1, fp);
    fclose(fp);
    return 0;
}
编译运行后结果:
错误    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.
错误    MSB6006    “CL.exe”已退出,代码为 2。    xxx    C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppCommon.targets    356   

请问这是怎么回事,求解释

搜索更多相关主题的帖子: details 应用程序 function include instead 
2016-03-04 12:34
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
收藏
得分:8 
fopen此功能可能不安全,请考虑用fopen_s代替。如果要取消此提示,使用_CRT_SECURE_NO_WARNINGS。更多的信息请查看在线帮助。
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>

   唯实惟新 至诚致志
2016-03-04 13:06
grmmylbs
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:54
帖 子:1409
专家分:5845
注 册:2016-2-14
收藏
得分:2 
项目--属性----C/C++---预处理器
在预处理器定义中增加_CRT_SECURE_NO_WARNINGS

[此贴子已经被作者于2016-3-4 13:11编辑过]

2016-03-04 13:09
cityrunner
Rank: 2
等 级:论坛游民
帖 子:26
专家分:33
注 册:2016-1-22
收藏
得分:0 
回复 2楼 qq1023569223
哦,谢谢,能帮我解释一下 您说的那个函数的用法及参数吗?
2016-03-04 13:17
cityrunner
Rank: 2
等 级:论坛游民
帖 子:26
专家分:33
注 册:2016-1-22
收藏
得分:0 
回复 3楼 grmmylbs
谢谢,不过这个好像有弊端
2016-03-04 13:18
cityrunner
Rank: 2
等 级:论坛游民
帖 子:26
专家分:33
注 册:2016-1-22
收藏
得分:0 
回复 2楼 qq1023569223
帮我举个 使用这个函数的例子吧,谢谢
2016-03-04 13:19
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
收藏
得分:0 
程序代码:
#include "stdafx.h"
#include "stdio.h"
#include "stdlib.h"

 
//errno_t fopen_s( FILE** pFile, const char *filename, const char *mode );
//成功打开文件返回0,失败不为0
int _tmain(int argc, _TCHAR* argv[])
{
    FILE *fp;
    char filename[10]="11111.txt";
    if(fopen_s(&fp,filename,"r")!=0)
    {
        printf("cannot open file\n");
        exit(0);
    }
    fclose(fp);
    return 0;
}


[此贴子已经被作者于2016-3-4 13:31编辑过]


   唯实惟新 至诚致志
2016-03-04 13:21
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
幾乎都不看幫助學編程的

授人以渔,不授人以鱼。
2016-03-04 17:51
快速回复:C语言初学者,visual studio2015 环境下,项目:win32控制台应用程序, ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016667 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved