User Tools

Site Tools


dydaktyka:cprog:common_mistakes

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
dydaktyka:cprog:common_mistakes [2015/11/08 18:36]
pkleczek [if-else - co to?!]
— (current)
Line 1: Line 1:
-====== Częste błędy ====== 
- 
-...czyli na co zwracać szczególną uwagę podczas pisania programu. 
- 
-===== Przypisanie czy porównanie?​ ===== 
- 
-W języku C operator ''​=''​ oznacza przypisanie,​ natomiast operator ''​==''​ -- porównanie dwóch wartości (zobacz: [[dydaktyka:​cprog:​2015:​conditionals#​operatory_relacyjne|operatory relacyjne]]):​ 
- 
-<code c> 
-int a = 5;        // przypisanie do zmiennej `a` wartosci 5 
- 
-if (a == 7) {     // porownanie wartosci zmiennej `a` z wartoscia 7 
-    ... 
-}    
-</​code>​ 
- 
-:!: Operator przypisania przypisuje temu, co stoi po lewej stronie (zazwyczaj zmiennej), wartość stojącą po prawej stronie. 
-<code c> 
-int a; 
-2 = a;  // blad! 
-a = 2;  // OK 
-</​code>​ 
- 
-===== Typ danych w wywołaniu funkcji ===== 
- 
-Typ zmiennych podajemy tylko w deklaracji funkcji -- nie w wywołaniu: 
- 
-<code c> 
-void func(int a) {  // OK 
-    ... 
-} 
- 
-int main () 
-{ 
-    int k = 3; 
-    ​ 
-    func(int k); // blad! 
-    func(k); ​    // OK 
- 
-    ... 
-} 
-</​code>​ 
- 
- 
-===== if-else - co to?! ===== 
- 
-Zamiast powtarzać ten sam warunek logiczny, tylko w formie zaprzeczenia,​ możesz skorzystać z konstrukcji ''​if-else''​ (//jeżeli -- w przeciwnym razie//). 
- 
-<code c> 
-// Dziala, ale trzeba duzo pisac i malo to czytelne... ​   ​ 
-if (a*a + b*b == c*c) { 
-    return 1; 
-} 
-if (a*a + b*b != c*c) { 
-    return 0; 
-} 
-</​code>​ 
-<code c> 
-// Lepiej! 
-if (a*a + b*b == c*c) { 
-    return 1; 
-} else { 
-    return 0; 
-} 
-</​code>​ 
- 
-===== Funkcja main() bez "​return"​ ===== 
- 
-(Minimalny) nagłówek funkcji ''​main()''​ wygląda następująco:​ 
-<code c> 
-int main(void) 
-</​code>​ 
-Ten ''​int''​ oznacza, że funkcja ''​main()''​ zwraca wartość całkowitą (do systemu operacyjnego),​ a zatem powinna się ona kończyć instrukcją ''​return''​ (w naszym przypadku ''​return 0;'',​ bo ''​0''​ oznacza poprawne zakończenie programu): 
-<code c> 
-int main(void) { 
-    return 0; 
-} 
-</​code>​ 
  
dydaktyka/cprog/common_mistakes.1447004182.txt.gz · Last modified: 2020/03/25 11:46 (external edit)