Ok, dzięki za odpowiedzi. To tylko rozważania teoretyczne, z czystej ciekawości. Przez wiele lat pisałem programy w asm wielu procesorów, więc siłą rzeczy było to pod moją kontrolą. Teraz zacząłem (od roku) w C. Dało mi to znacznie większe możliwości kosztem - niestety - utraty kontroli, a przynajmniej tak łatwej i bezpośredniej kontroli. Dlatego czasem pytam o takie rzeczy.
Dodano po 4 [godziny] 36 [minuty]:
Eagle napisał: Inline to sugestia dla kompilatora nie obowiązek
Głównie chyba to jest najważniejsza informacja - myślałem że to ja decyduję
Dodano po 8 [minuty]:
mcvsama napisał: Nie zmienia. Semantyka kodu pozostaje identyczna.
Taka w ścisłym znaczeniu semantyka nie zmienia się, zakładając jak np. w przypadku PC że zasoby są praktycznie nieograniczone i liczy się tylko to co wchodzi do funkcji i co z niej wychodzi. Ale w przypadku kontrolerów zasoby są przeważnie ograniczone, czasem bardzo, choćby takie kontrolery jak PIC 16xxx i wcześniejsze, mające sprzętowy stos ośmio poziomowy! (horror). Wtedy kontrola stosu i dokładne wyliczanie zagnieżdżeń (łącznie z możliwymi przerwaniami) dla mnie zmienia semantykę, bo ma ogromny wpływ na to co wychodzi z funkcji (czyli - po przekroczeniu stosu - bzdury lub zawieszenie programu). To kwstia czy do semantyki kodu zaliczamy możliwe katastrofy systemu czy nie;)