1 00:00:00,000 --> 00:00:00,330 2 00:00:00,330 --> 00:00:01,830 >> DAVID Malan: Do kiel povas ni solvos tiun problemon? 3 00:00:01,830 --> 00:00:05,310 Nu, la plej facila maniero estas nur por eviti ints aro, kaj anstataŭ difini 4 00:00:05,310 --> 00:00:06,960 unu flosas per float. 5 00:00:06,960 --> 00:00:12,460 Specife, ni ŝanĝos 1 ĝis 1,0 kaj 10 al 10.0, kaj poste konservu ĉi 6 00:00:12,460 --> 00:00:14,380 dosiero floats1.c. 7 00:00:14,380 --> 00:00:20,270 Ni nun kompili gxin kun make floats1, kaj poste ruli ĝin per floats1. 8 00:00:20,270 --> 00:00:22,590 Kaj nun, mi ja vidos 0.1. 9 00:00:22,590 --> 00:00:25,540 >> Ekzistas alia vojo ni povus solvi ĝin, kaj tio uzas fandon. 10 00:00:25,540 --> 00:00:29,750 Fandon estas la procezo de konvertanta unu datumtipo alian, supozante gxin 11 00:00:29,750 --> 00:00:31,130 havas sencon fari tion. 12 00:00:31,130 --> 00:00:34,370 En ĉi tiu kazo, kion mi povus fari estas reiri al la versio de kodo, kie mi estas 13 00:00:34,370 --> 00:00:40,050 dividante unu en int per 10 en int, sed Mi povis eksplicite diri la tradukilo 14 00:00:40,050 --> 00:00:43,990 ke mi volas trakti 1 kvazaŭ ĝi estas flosi, eĉ kvankam ĝi estas int, kaj 15 00:00:43,990 --> 00:00:48,270 Mi ŝatus trakti 10 kiel kaleŝego, kvankam ĝi ankaŭ estas int. 16 00:00:48,270 --> 00:00:51,760 >> En realo, mi povis foriri kun nur enjxetantan unu el tiuj al kaleŝego, 17 00:00:51,760 --> 00:00:55,350 ĉar se vi dividos float per int aux int per kaleŝego, C 18 00:00:55,350 --> 00:00:57,550 revenu al vi glitpunkta valoro. 19 00:00:57,550 --> 00:01:01,150 Sed en tiu kazo, bonan mezuron, mi konverti ambaŭ por flosoj, rekompili 20 00:01:01,150 --> 00:01:06,380 mia programo kun make floats1, tiam ruli ĝin per skalara oblikvo floats1, 21 00:01:06,380 --> 00:01:08,770 kaj mi vidas ankaŭ 0.1. 22 00:01:08,770 --> 00:01:10,983