项目场景:
visual studio 2017下编译三角网格库Triangle
工具/软件:
1、Triangle软件:https://www.cs.cmu.edu/~quake/triangle.html
2、visual studio 2017
官网下载即可
https://learn.microsoft.com/zh-cn/visualstudio/releases/2017/vs2017-compatibility-vs
问题描述
Triangle是在Linux系统下编译的,在win系统一直出错。
典型问题1:triangle.h和triangle.c到底增加哪些语句
文件右击分别添加triangle.h和triangle.c,仅有这两个文件,其他全删除;可视化showme.c是Linux系统下的,不是win。
》》》》》》》》》》》》对triangle.h
前部增加
#ifndef _TRIANGLE_HEADER_
#define _TRIANGLE_HEADER_
#ifdef _cplusplus
extern "C" {
#endif
#define REAL double
#define ANSI_DECLARATORS
#define VOID int
#include "triangle.h"
后部增加
#ifdef _cplusplus
}
#endif///更改这里,博客加粗改颜色之后成代码了,不知为什么
#endif
图片就是
…
…
》》》》》》》》》》》》对triangle.c
/* #define NO_TIMER /
/ #define TRILIBRARY */
改为
#define NO_TIMER
#define TRILIBRARY
典型问题2,编译报错
‘strncpy’: This function or variable may be unsafe.
解决方法1:
在工程文件名处右击鼠标打开快捷菜单,找到“属性”选项,进入项目属性页面
在属性页面中找到“C/C++"——”预处理器“,按下图操作单击箭头指向处的按钮
在下面的编辑窗口中添加一句命令:_CRT_SECURE_NO_WARNINGS
添加完成后应用并退出。
————————————————
版权声明:本文为CSDN博主「PandaRELEASE」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sikong00/article/details/108754058
解决方法2:本人是采用该方法里面的第2款
查阅文档后发现 strcpy()已经被微软认为是不安全的 出现这个错误可以有两个解决方法
1 strcpy 方法 替换成 strcpy_s
2 不替换,在头文件中加入
#pragma warning(disable:4996)
原文见
https://blog.csdn.net/JYHZZ/article/details/125750024
注:
再次编译,成功了。
第一次发文,如有侵权或不妥,及时联系更正。