Translation

(itstool) path: answer/para
When the compiler sees you call a function, it checks if it has already seen a prototype for it. If it has not, it assumes the function returns an <type>int</type>, which is definitely not what you want here.
211/2080
Context English Persian State
and I compiled it as:
و آن را اینگونه همگردان کردم:
<prompt>%</prompt> <userinput>cc temp.c -lm</userinput>
<prompt>%</prompt> <userinput>cc temp.c -lm</userinput>
like you said I should, but I get this when I run it:
همانطور که گفتید، اما این خروجی را هنگام اجرا دریافت می‌کنم:
<prompt>%</prompt> <userinput>./a.out</userinput>
2.1 ^ 6 = 1023.000000
<prompt>%</prompt> <userinput>./a.out</userinput>
2.1 ^ 6 = 1023.000000
This is <emphasis>not</emphasis> the right answer! What is going on?
این پاسخ درست <emphasis>نیست</emphasis>! جریان چیست؟
When the compiler sees you call a function, it checks if it has already seen a prototype for it. If it has not, it assumes the function returns an <type>int</type>, which is definitely not what you want here.
زمانی‌که همگردان می‌بیند شما تابعی را فراخوانی می‌کنید، بررسی می‌کند که از پیش نمونهٔ اصلی آن را دیده است یا خیر. اگر ندیده باشد، تصور می‌کند که تابع <type>int</type> برمی‌گرداند، چیزی که قطعاً اینجا نمی‌خواهید.
So how do I fix this?
پس چطور این را درست کنم؟
The prototypes for the mathematical functions are in <filename>math.h</filename>. If you include this file, the compiler will be able to find the prototype and it will stop doing strange things to your calculation!
نمونه‌های اصلی برای توابع ریاضیانی در <filename>math.h</filename> هستند. اگر این پرونده را لحاظ کنید، همگردان قادر به یافتن نمونهٔ اصلی خواهد بود و از انجام اقدامات عجیب خودداری می‌کند!
#include &lt;math.h&gt;
#include &lt;stdio.h&gt;

int main() {
...
#include &lt;math.h&gt;
#include &lt;stdio.h&gt;

int main() {
...
After recompiling it as you did before, run it:
پس از همگردانی مجدد آن همچون قبل‌تر که انجام دادید، آن را اجرا کنید:
<prompt>%</prompt> <userinput>./a.out</userinput>
2.1 ^ 6 = 85.766121
<prompt>%</prompt> <userinput>./a.out</userinput>
2.1 ^ 6 = 85.766121

Loading…

When the compiler sees you call a function, it checks if it has already seen a prototype for it. If it has not, it assumes the function returns an <type>int</type>, which is definitely not what you want here.
زمانی که همگردان می‌بیند شما تابعی را فراخوانی می‌کنید، بررسی می‌کند که از پیش نمونهٔ اصلی آن را دیده است یا خیر. اگر ندیده باشد، تصور می‌کند که تابع <type>int</type> برمی‌گرداند، چیزی که قطعاً اینجا نمی‌خواهید.
12 days ago
When the compiler sees you call a function, it checks if it has already seen a prototype for it. If it has not, it assumes the function returns an <type>int</type>, which is definitely not what you want here.
زمانی که همگردان می‌بیند شما تابعی را فراخوانی می‌کنید، بررسی می‌کند که از پیش نمونه اصلی آن را دیده است یا خیر. اگر ندیده باشد، تصور می‌کند که تابع <type>int</type> برمی‌گرداند، چیزی که قطعاً اینجا نمی‌خواهید.
2 weeks ago
Browse all component changes

Glossary

English Persian
Prototype نمونهٔ اصلی FreeBSD Doc
Function library کتابخانهٔ توابع FreeBSD Doc
Compiler همگردان FreeBSD Doc

Source information

Source string comment
(itstool) path: answer/para
Labels
No labels currently set.
Source string location
book.translate.xml:1089
Source string age
a month ago
Translation file
books/fa/developers-handbook.po, string 202