❶ 使用vs2017如何进行systemc 编程
一、编译System库
下载SystemC library source code
下载SystemC library,目前的版本是 2.3.1
以SystemC 2.3.1为例,下载后的文件名喂systemc-2.3.1.tgz,解压到工作目录下:...(个人的工作目录路径)systemcsystemc-2.3.1
打开....systemcsystemc-2.3.1msvc80SystemC目录下的SystemC.sln
systemC的软件开发环境篇
VS2012 "生成(Build英文)"-->“生成解决方案(Build Solution)”,生成SystemC.lib文件。
systemC的软件开发环境篇
如果编译成功的话(忽略那些Warning)。
在..systemcsystemc-2.3.1msvc80SystemCdebug目录下就生成了SystemC.lib
PS:编译systemc-2.3.0会遇到以下问题:
systemC的软件开发环境篇
VS2012在编译时会遇到这样的问题:fatal error C1189: #error : The C++ Standard Library forbids macroizing keywords. Enable warning C4005 to find the forbidden macro.导致生成库不成功,
解决方案是:工程项目SystemC处右键Properties -> configuration Properties ->C/C++ -> Preprocessor -> Preprocessor Definitions 添加_XKEYCHECK_H。
systemC的软件开发环境篇
systemC的软件开发环境篇
然后就可以编译通过了
二、新建SystemC工程,并配置项目属性
有了编译的SystemC.lib库,我们就可以在vs2012配置我们的systemc工程属性了
新建项目,win32控制台应用程序,控制台应用程序设置时选择“空项目”。
添加.cpp源文件与.h头文件。
以下是一个简单地hello systemC的程序 功能是打印三行语句
Hello,SystemC!
by Eagleson
by Eagleson2016-01-12
源代码如下
//main.c
#include
#include "hello.h"
int sc_main(int, char**){
hello h("hello");
system("pause");
return 0;
}
//hello.h
#ifndef _HELLO_H
#define _HELLO_H
#include "systemc.h"
#include
#include
using namespace std;
void print1(string & name){
name = name + "2016-01-12";
cout<
}
SC_MODULE(hello)
{
SC_CTOR(hello)
{
cout<<"Hello,SystemC!"<
string str;
str="by Eagleson";
cout<
print1(str);
}
};
#endif
添加源文件后进行项目属性设置。
C/C++→常规→附加包含目录 (..systemc-2.3.1src)
systemC的软件开发环境篇
C/C++ →语言→启用运行时类型信息→是
systemC的软件开发环境篇
C/C++→代码生成→运行库→多线程调试(/MTd)
systemC的软件开发环境篇
C/C++→ 命令行→其它选项 加上/vmg
systemC的软件开发环境篇
Linker →常规→附加目录库 (..systemc-2.3.1msvc80SystemCDebug)
systemC的软件开发环境篇
Linker →输入→附加依赖库(SystemC.lib)
systemC的软件开发环境篇
C/C++→所有选项→警告等级 等级1(/W1)
systemC的软件开发环境篇
上述属性设置在每次建立SystemC工程时都需要设置。若想免去每次都设置的麻烦可通过以下方法。
View-->Property Manager 在左侧会有属性窗口打开。展开树形找到“Microsoft.Cpp.Win32.user”,双击之后就可以设置所有项目的属性了。
systemC的软件开发环境篇
三、编译、调试程序
systemC的软件开发环境篇
与我们预期的结果是一致的。
SystemC基于VS2012的软件平台搭建到这里就完成了。有了这个平台环境,后面的语法学习和练习就不只是纸上谈兵了。
❷ vs2017头文件的问题
仅供参考:
1、stdafx.h头文件如果要去掉的话,删除后需要在源文件中去除预编译
2、如果要一开始就避免产生这个文件,新建项目--常规--空项目 ,添加源文件,此时你可以直接使用
#include<iostream>
usingnamespacestd;
intmain()
{
//你的代码
return0;
}
❸ VS2017,c++怎么在这里添加新的页面
在视图选项里面找到解决方案资源管理器
在解决方案资源管理器页面右键源文件目录 可以添加新的cpp文件
右键头文件目录可以添加新的.h文件
或者直接右键工程名称 添加的文件会自动归类到文件夹里面
❹ VS2017报错 MSB803MSB8036 找不到 Windows SDK 版本8.1
VS2017报错 MSB803MSB8036 找不到 Windows SDK 版本8.1是因为没有点击直接选择“选择文件夹”,步骤如下:
1、首专先第一步就属是进行打开“VS2017”,点击“项目”,打开“项目属性”如下图所示。
❺ vs2013怎么添加头文件和库文件
方法如下:
作为复程制序员现在应该用的是vs2015,添加依赖项和依赖库和13一样,这里以13为例;
1.首先,打开vs2013和你的project
2.要添加依赖项和依赖库,就要找到【解决方案资源管理器】,也许你的【解决方案资源管理器】在右边或左边隐藏,点开即可
它的快捷键是ctrl+Alt+L
3.在--你的项目名上右键--选择属性--
4、在c/c++中找到附加依赖项
5、在链接库中找到附加依赖库
❻ vs2017编写调试程序中调用自己写的头文件的时候总是跳出该符号在函数 _main 中被引用
你好像根本就没有写main()方法,编译器连入口都没有找到,一定要写main()方法;
稍简化了一下,可以编译通过,能运行
#include"stdafx.h"
#include<conio.h>
#include<Windows.h>
#include<iostream>
#include<string>
namespacepers
{
structPerson
{
std::stringfname;
std::stringlname;
};
voidgetPerson(Person&);
voidshowPerson(constPerson&);
}
namespacedebts
{
usingnamespacepers;
structDebt
{
Personname;
doubleamount;
};
voidgetDebt(Debt&);
voidshowDebt(constDebt&);
doublesumDebts(constDebtar[],intn);
}
namespacepers
{
usingstd::cout;
usingstd::cin;
voidgetPerson(Person&rp)
{
cout<<"Enterfirstname:";
cin>>rp.fname;
cout<<"Enterlastname:";
cin>>rp.lname;
}
voidshowPerson(constPerson&rp)
{
std::cout<<rp.lname<<","<<rp.fname;
}
}
namespacedebts
{
voidgetDebt(Debt&rd)
{
getPerson(rd.name);
std::cout<<"Enterdebt:";
std::cin>>rd.amount;
}
voidshowDebt(constDebt&rd)
{
showPerson(rd.name);
std::cout<<":$"<<rd.amount<<std::endl;
}
doublesumDebts(constDebtar[],intn)
{
doubletotal=0;
for(inti=0;i<n;i++)
total+=ar[i].amount;
returntotal;
}
}
intmain()
{
pers::Personperson;
debts::Debttest;
//test.name=person;
//test.amount=3.14;
debts::getDebt(test);return0;
}
❼ 如何在vs中如何添加lib,头文件,库目录
直接在文件中添加不就好了
#pragma comment(lib,"libmySQL.lib")
❽ visual studio2017 添加dll库
1、添加工程的头文件目录:工程—属性—配置属性—c/c++—常规—附加包含目录:加上头文件存放目录。
2、添加文件引用的lib静态库路径:工程—属性—配置属性—链接器—常规—附加库目录:加上lib文件存放目录。
然后添加工程引用的lib文件名:工程—属性—配置属性—链接器—输入—附加依赖项:加上lib文件名。
3、添加工程引用的dll动态库:把引用的dll放到工程的可执行文件所在的目录下。
❾ VS2017创建了静态库项目却一片空白
1.. 创建工程——win32项目 My_Static_lib_1
2.. 选择静态库,预编译头和安全开发生命周期(SDL)检查可要也可不要,我们这里选择不要
3.. 完成
4.. 添加源文件:static.cpp
测试程序
#include "static.h"
int sum(int m,int n)
{
return m + n;
}12345
5..添加头文件static.h
测试程序
#ifndef STATIC_H
#define STATIC_H
int sum(int m, int n);
#endif1234
6.生成解决方案
之后你会在工程的Debug下发现生成了一个静态库
My_Static_lib.ib
至此,静态库已经生成
B:如何使用静态库
1.新建一个 win32项目 工程 Test_my_lib
2控制台应用程序(O)和空项目
3
把前面生成的静态库My_Static_lib_1.lib和static.h复制到此工程里,并把头文件添加到工程里
4
添加测试程序
#include<iostream>
#include "static.h"
using namespace std;
#pragma comment(lib,"My_Static_lib_1.lib")
int main()
{
cout << sum(2, 3);
getchar();
return 0;
}
1234567891011
5运行,可以看到结果