free源码
‘壹’ 求此题FREE PASCAL源代码
你好,这是一道很典型的动态规划的题目。用背包思想,转移方程就是:f[j]:=f[j-a[i]]+b[i]。
下面就是源代码:
var
m,t,i,j:longint;
f:array[0..1000000]
of
longint;
a,b:array[0..600]
of
longint;
begin
readln(t,m);
for
i:=1
to
m
do
readln(a[i],b[i]);
fillchar(f,sizeof(f),0);
for
i:=1
to
m
do
for
j:=t
downto
a[i]
do
if
f[j]<f[j-a[i]]+b[i]
then
f[j]:=f[j-a[i]]+b[i];
writeln(f[t]);
end.
如果要用文件形式的话就是:
var
m,t,i,j:longint;
f:array[0..1000000]
of
longint;
a,b:array[0..600]
of
longint;
begin
assign(input,'文件名.in');
reset(input);
assign(output,'文件名.out');
rewrite(output);
readln(t,m);
for
i:=1
to
m
do
readln(a[i],b[i]);
fillchar(f,sizeof(f),0);
for
i:=1
to
m
do
for
j:=t
downto
a[i]
do
if
f[j]<f[j-a[i]]+b[i]
then
f[j]:=f[j-a[i]]+b[i];
writeln(f[t]);
close(input);
close(output);
end.
谢谢,祝你好运。
‘贰’ 我在网上下载了一个FreeRdp的源码文件夹,请问如何编译才能生成可执行文件啊,跪问各位大神了,在线等!
这要看你在哪个平台使用了。通常可以使用cmake进行编译,如果是linux下用,也可以用ubuntu编译。
下载源码编译,是为了定制和二次开发,如果没有这个需求或者编程不熟,直接下载各个平台下已经编译好的就可以了,没必要下载源代码。定制编译不适合非编程人员和编程初学者。
‘叁’ freertos源码包vs例程用什么打开
你想调用你的模型,最简单的法是看examples/cpp_classification里面的cpp文件,那是教你如何调用caffe获取分类结果的(你没接触过caffe的话,建议你直接按照这个文件来操作可能会比较简单,下面我的代码我也不知道没接触过caffe的人看起来难度会有多大)不过那个代码我看着不太习惯,所以之前自己稍微写了一个简易的版本,不知道怎么上传附件,懒人一个就直接把代码贴在最后了。先简单解释一下如何使用,把这个代码复制到一个头文件中,然后放在examples里面一个自己创建的文件夹里面,然后写一个main函数调用这个类就可以了,比如:复制,保存到caffe/examples/myproject/net_operator.hpp,然后同目录下写一个main.cpp,在main函数里面#include"net_operator.hpp",就可以使用这个类了:conststringnet_prototxt="";//你的网络的prototxt文件,用绝对路径,下面同理conststringpre_trained_file="";//你训练好的.caffemodel文件conststringimg_path="";//你要测试的图片路径//创建NetOperator对象NetOperatornet_operator(net_prototxt,pre_trained_file);Blob*blob=net_operator.processImage(img_path);//blob就得到了最后一层的输出结果,至于blob里面是怎么存放数据的,你需要去看看官网对它的定义写完main.cpp之后,到caffe目录下,make,然后它会编译你写的文件,对应生成的可执行文件。比如按我上面写的那样,make之后就会在caffe/build/examples/myproject文件夹里面生成一个main.bin,执行这个文件就可以了。因为生成的可执行文件并不是直接在代码目录下,所以前面我建议你写的路径用绝对路径另外如果你要获取的不是最后一层的输出,你需要修改一下processImage函数的返回值,通过NetOperator的成员变量net_来获取你需要的blob,比如有个blob名称为"label",你想获取这个blob,可以通过net_->blob_by_name("label")来获取,当然获取到的是shared_ptr>类型的,搜一下boostshared_ptr就知道跟普通指针有什么不同了
‘肆’ FreeCMS商业版公开所有源码么
FreeCMS可以放在子目录中,首页乱主要是因为发布时是以根目录下生成的首页,您只需要重新生成一下静态页面就可以了。
‘伍’ 请问free Pascal的源代码目录在哪
你在free Pascal 的桌面快捷方式上点右键--》属性--》查找目标,(一般会跳出来C:\FPC\2.0.0\bin\i386-win32),那就是free Pascal的源代码目录。 请采纳,O(∩_∩)O谢谢
‘陆’ 有谁知道malloc和free的实现机制,有源代码吗
#include <stdio.h>
#include<malloc.h>
void main()
{
int*p=(int*)malloc(100*sizeof(int)); //申请100个int型空间
free(p); //释放
}
‘柒’ 开放源代码软件的历史
开放源码软件主要被散布在全世界的编程者队伍所开发,但是同时一些大学,政府机构承包商,协会和商业公司也开发它。开放源码软件在历史上曾经与UNIX,Internet联系得非常紧密。在这些系统中许多不同的硬件需要支持,而且源码分发是实现交叉平台可移植性的唯一实际可行的办法。在DOS,Windows,Macintosh平台上仅仅有很少的用户有可用的编译器,开放源码软件更加不普遍。对开放源码开发模式的更详细的讨论请看Eric Raymond写的“The Cathedral and the Bazaar”。 传统的商业软件有巨大的广告和商标预算,在这些背后给了它太多的关注,已经远远超出了它的重要性。传统的商业软件事实上只是所有软件的很小的一部分。Lion(狮子)是被各种组织开发,并且是为了它们自己内部的需要。内部开发源码,特别是被美国政府所命令的重要源码的共享是具有开发源码牌照的。这实际上是由于绝大多数软件专家不编写商业软件。
要去定量的描述开放源码软件的整个影响和平均利益是困难的,但是很明显这两者都被公众广泛传播又低估其价值。现在,许多开放源码软件由商业开发支持。同时,开放源码经营模式的成功和开放源码开发的高生产效率及高质量都说服Netscape(公司名)在1998年年初决定要将它的浏览器开发在开放源码许可之下。
现在有巨大的动力推动着开放源码的运动。看到如此多的传统商业开发者们为了与他同步不得不谋取发展是很有趣的。计算机工业早已看到了几个激动人心的发展和革新的浪潮,例如,二十世纪七十年代的第一台微机,以及八十年代中期到现在对日用微机的大量生产,还有同一时期Internet(互联网)的崛起。使用开放源码模式的商业软件可能是下一个重要的新潮流。 历史上许多人开发过这样一种软件(也就是免费软件基础)简称为“free software”,而媒介一般称它为“freeware”。不幸的是这两种术语都被证明是不明确的且含糊的。
对于大多数人来说“free”仅仅用于购买的费用。比这个初始花费更重要的是由于缺乏许可证限制而带来的费用。这些是几种有可能是免费的软件类型,但是明显不是open-source software,因为它们具有某些限制或是缺乏公开的源码。
‘捌’ 如何在xshell5中编译freeswitch源代码
(1)使用安装包安装
Windows用户可以直接下载安装文件,然后根据自己的系统选择不同目录,32位系统的用户选择x86目录,64位系统的用户选择x64目录。freeswitch.msi是最新的安装程序,一般隔几天就会更新一次版本。笔者的测试环境是32位的Windows XP,下载界面如图3-3所示
如同安装其他程序一样,我们全部选择默认设置即可,也就是说只要连续单击“Next”按钮就能安装完毕。安装完成后选择”开始菜单”→“所有程序”→“FreeSWITCH”→ “FreeSWITCH”便可以启动FreeSWITCH了,启动后的界面如图3-4所示。
如果安装过程中你没有修改默认安装路径的话,那么FreeSWITCH的实际安装路径是:c:\Program Files\FreeSWITCH,配置文件在该目录的conf目录下
(2)从源代码安装
如果从源代码安装,则首先要下载源代码。
除此之外,也可以Git仓库获取源代码。Git是FreeSWITCH使用的版本控制工具,从Git仓库获取源代码的好处是可以随时更新,并可以很方便地切换到不同的代码分支,甚至“倒回”到任意提交点。
如果从Git仓库获取源代码,需要先在Windows上安装Git。
安装Git很简单,一般来说双击安装文件并连续单击“Next”按钮即可安装完毕。不过,在Windows平台编译FreeSWITCH有几个要注意的事情,因此在安装Git的过程中我们也需要注意以下问题,并做适当的选择:
将FreeSWITCH的源代码放到一个“干净”的目录下。为避免有时候遇到奇怪的问题,最好把代码放到一个比较不容易出问题的目录下,如可以放到
C:\src\freeswitch 或D:\src\freeswitch下,这两个都是比较好的目录。而像 C:\My
Documents(有空格)或C:\源代码中文目录\freeswitch(有中文)之类的则在编译或使用时可能会有问题。
‘玖’ 谁有Free Pascal 中 dos.ppu 的源码
Max_Path ~ TWin32Handle ? PWin32FileTime ? $rttiPWIN32FILETIME TWin32FileTime ? $rttiTWIN32FILETIME PWin32FindData ?
$rttiPWIN32FINDDATA TWin32FindData ? $rttiTWIN32FINDDATA /
Searchrec / ? $rttiSEARCHREC # FileNameLen ? � Registers ? $rttiREGISTERS " fcarry $ ? fparity % ? "
fauxiliary & ? fzero ' ? @ fsign ( ? ! foverflow ) ? readonly , ? hidden - ? sysfile . ? volumeid / ? ! directory 0 ? archive 1 ? anyfile 2 ? fmclosed 5 白 fminput 6 弊 ! fmoutput 7 沧 " fminout 8 ! 匙 # ComStr =
( $ PathStr >
/ % DirStr ?
6 & NameStr @
= ' ExtStr A
D ) ( filerecnamelength K � ) FileRec
R * $rttiFILEREC ) + TextRecNameLength W & , TextRecBufSize ^ - TLineEndStr e . $rttiTLINEENDSTR / TextBuf
j 0 $rttiTEXTBUF 1 TextRec
o 2 $rttiTEXTREC L 3 DateTime L t 4
$rttiDATETIME V ! 5 DosError Z y 6 Intr ^ ? 7 MSDos _ ? 8
DosVersion c ? 9 GetDate d ? : GetTime e ? ; SetDate f ? < SetTime g ? =
UnpackTime h ? > PackTime i ? ? Exec l ? @ DosExitCode m ? A DiskFree p ? B DiskSize q ? C FindFirst r ? D FindNext s ? E FindClose t ? F GetFAttr w ? G GetFTime x ? H FSearch y ? I FExpand z ? J FSplit { ? K GetShortName | ? L GetLongName } ? M EnvCount ? N EnvStr ? ? O GetEnv ? � P SetFAttr ?
Q SetFTime ?
R GetCBreak ?
S SetCBreak ?
T GetVerify ?
U SetVerify ?
V SwapVectors ? "
W GetIntVec ? '
X SetIntVec ? ,
Y Keep ? 1
Z
GetMsCount ? 6
# [ ExecInheritsHandles A ;
? strings8=?d<n Q ? 鳸 2 + B
H
_DOS_init��O
Q
? ? + ? ?
��? ? 6 ? ? " " DriveNr 6 ? ?
" Dir 6( ? ? # " $highDIR ; ? ? ? - ? ? ? ? , dwOSVersionInfoSize [ ? ' dwMajorVersion \ ' dwMinorVersion ] &
dwBuildNumber ^ % dwPlatformId _ % szCSDVersion ` ? * " ( / ( + 6 < ��C E k
? ? + J P ��p r m
? ? " ft m) W \
" data m@ ^ e " time mE g n ? + w } ��? ? o
? ? " date o# ? ?
" time o( ? ? " ft o8 ? ? ? + ? ? ��? ? q
? ? " ft q+ ? ?
" lft qC ? ? ? + ? ? ��? ? s
? ? " lft s+ ? ?
" ft sD ? ? ? + ? ? ��? ? u
? ? - ? ? lo hi ? + #
��3 5 ? ? ? " d ? * 1
? + : @
��P R ? ? ? " Attr ? G N
? + W ]
��m o ? ? ? " Attr ? d k
? + t z
��? ? ? ? ? " DTime ? ? ?
" Wtime ? ? ? ? + ? ?
��? ? ? ? ? " Wtime ? ? ?
" DTime ? ? ? ? -! ? ? ? ? wYear ? ? wMonth ? ? #
wDayOfWeek ? ? wDay ? ? wHour ? ? wMinute ? ?
wSecond ? ? &
wMilliseconds ? ? ? +"
��
? ? ? +#
��(
*
? ? ? " t ? !
&
? +$ /
5
��C
E
? ? ? " t ? <
A
? )* m
r
y
-+ ~
? ? ? " hProcess ? ! hThread ? % dwProcessId ? $
dwThreadId
? ? +, ? ? ��
? ? - " lpApplicationName
? ?
) "
lpCommandLine
5 ? ? / " lpProcessAttributes ? ? . " lpThreadAttributes% ? ? ( + " bInheritHandles ? ? 2 + " dwCreationFlags+ ? ? < ) "
lpEnvironmentC ? ? F . " lpCurrentDirectory ? ? P ) "
lpStartupInfo1 ? ? Z 0 "
lpProcessInformation d ? +- ��+ -
? ? " h
" code3 " ) ? +. 2 8 ��O Q
? ? # " hHandle! ? D
* " dwMilliseconds8 F M ? +/ V \ ��j l
? ? " h c h
? +1 x ~ ��? ? N
? ? ! " driveN ? ?
* " sector_clusterN. ? ? ( " bytes_sectorN= ? ? ( " freeclustersO ? ? ( ) "
totalclustersO+ ? ? 2 ? 32 ? ? ? ? ? ! " driveR# ? ?
. " availableforcallerR3 ? ? ! " totalS ? ? " freeS$ ? ? ( ? +5 ? �� ?
? ? & "
lpFileName?
* " lpFindFileData?3 ? +6 & ��; = ?
? ? % " hFindFile? - 2
* " lpFindFileData?9 4 9 ? +7 B H ��V X ?
? ? % " hFindFile? O T
? +8 ] c
��s u ? ? ? " S? j q
? +9 z
��? ? ? ? ? " S? ? ?
? +: ? ?
��? ? ? ? ? " f? ? ?
? +> ? ? ��? ?
? ? " h ? ?
$ " creation* ? ? & "
lastaccess3 ? ? % " lastwrite> ? ? ( ? +? ? � ��$ &
? ? " h
$ " creation* & "
lastaccess3 % " lastwrite> " ( ? +@ + 1 ��J L
? ? & "
lpFileName 8 ?
, " dwFileAttributes2 A H ? +A Q W ��g i
? ? & "
lpFileName ^ e
? +B n t ��? ?
? ? & "
lpFileName { ?
) "
nBufferLength- ? ? $ " lpBufferE ? ? & "
lpFilePartZ ? ? ( ? +C ? ? ��? ?
? ? ( " lpszLongPath ? ?
) "
lpszShortPath/ ? ? % " cchBufferD ? ? ? +K �� ?
? ? +L ��0 2 ?
? ? " p?$ ' .
? +P L R ��` b
? ? & "
hLibMole Y ^
? +Q g m ��{ }
? ? . " VersionInformation
t y
? +R ? ? ��? ?
? ? ) "
lpLibFileName ? ?
? +S ? ? ��? ?
? ? # " hMole ? ?
& "
lpProcName0 ? ? ? +T ? ?
��? ? ? ? 3U ? ?
? ? 鶣 strings G $DOS_init * ExtensionSeparator ? . ( LastDosExitCode ? ? $ VerifyValue o ? ? GetDirIO 6 , INVALID_HANDLE_VALUE S ��������+ VER_PLATFORM_WIN32s U 2 VER_PLATFORM_WIN32_WINDOWS V -
VER_PLATFORM_WIN32_NT W
OSVERSIONINFO Z ! $rttiOSVERSIONINFO c $
versioninfo d & + $ kernel32dll e - 2 GetLastError k
" FileTimeToDosDateTime m
" DosDateTimeToFileTime o
$ FileTimeToLocalFileTime q
$ LocalFileTimeToFileTime s
GetTickCount u
Longrec ~ R $rttiLONGREC ?
Last2DosError ? DosToWinAttr ? WinToDosAttr ? DosToWinTime ? WinToDosTime ? TSystemTime ? p $rttiTSYSTEMTIME ?
GetVersion ? GetLocalTime ? SetLocalTime ? # ! PProcessInformation ? % " $rttiPPROCESSINFORMATION # # TProcessInformation ? % $ $rttiTPROCESSINFORMATION
%
CreateProcess
& getExitCodeProcess
! ' WaitForSingleObject
( CloseHandle
) GetDiskFreeSpaceN
# * TGetDiskFreeSpaceExR ? % + $rttiTGETDISKFREESPACEEXU , , GetDiskFreeSpaceExV ? ? -
FindFirstFile?
. FindNextFile?
/
FindCloseFile?
0
StringToPchar? 1
PCharToString? 2 FindMatch? 3 GeTWin32FileTime
4 SeTWin32FileTime
5 SetFileAttributes
6 GetFileAttributes
7 GetFullPathName
8 GetShortPathName
# 9 GetEnvironmentStrings?
$ : FreeEnvironmentStrings?
; FreeLibrary
< GetVersionEx
= LoadLibrary
> GetProcAddress
% ? oldexitproc
@ dosexitproc
续lz_9506的回答
‘拾’ 对 NULL 指针连续 free多次会出错吗为什么
理论上对空指针free多次无错,free就是让此指针所指向的动态分配区标志为可用,即让系统从新标识(由系统完成),可参见free源码。
一般free后,立即将指针置为空,防止野指针出现,而在使用该指针时加上NULL判断则可避免出错。