某些功能无需链接

时间:2017-04-06 23:28:50

标签: c

我刚刚遇到一件奇怪的事情。在测试math.h时,我尝试使用pow()并编译它。我没有必要链接math.h。 但是当我尝试像fmod()这样的东西时,我必须在编译程序时链接math.h。 为什么我必须在第二种情况下链接库而不是第一种情况?

1 个答案:

答案 0 :(得分:2)

您的编译器可能正在使用常量替换<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="server"> <asp:UpdatePanel runat="server" ID="updatePanelMyUC" UpdateMode="Conditional" ChildrenAsTriggers="false"> <ContentTemplate> <uc1:myUserControl runat="server" ID="myUserControlID"/> <asp:ImageButton ID="btnSubmit" ImageUrl="../../Resources/btnSubmit.png" runat="server" OnClick="btnSubmit_Click" /> </ContentTemplate> <Triggers> <asp:AsyncPostBackTrigger ControlID="btnSubmit" EventName="Click" /> </Triggers> </asp:UpdatePanel> </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="rightcolumn" runat="server"> </asp:Content> 的一些用法。例如,它可以用pow替换pow(2.0, 3.0)。这是一个很好的优化,意味着您不再需要8.0中的pow

但是你的编译器可能无法替换math.h或数学函数的所有用法,所以它仍然需要链接到数学库。