-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!news.chmurka.net!.POSTED!not-for-mail
From: g...@s...invalid (Adam Wysocki)
Newsgroups: pl.misc.elektronika
Subject: Re: sscanf() - co robię źle?
Date: Wed, 27 Feb 2013 09:23:29 +0000 (UTC)
Organization: news.chmurka.net
Lines: 47
Message-ID: <g...@n...chmurka.net>
References: <kgab3v$bmc$1@portraits.wsisiz.edu.pl>
<7...@g...googlegroups.com>
<g...@n...chmurka.net>
<512d101e$0$1218$65785112@news.neostrada.pl>
NNTP-Posting-Host: 127.0.0.1
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: 8bit
X-Complaints-To: abuse-news.(at).chmurka.net
NNTP-Posting-Date: Wed, 27 Feb 2013 09:23:29 +0000 (UTC)
User-Agent: tin/2.1.0-20111224 ("Bridgend") (UNIX) (Linux/2.6.38.6-raid (i686))
Xref: news-archive.icm.edu.pl pl.misc.elektronika:643232
[ ukryj nagłówki ]Adam Dybkowski <a...@g...6c7o8m> wrote:
> Oj coś masz podejście zbyt wysokopoziomowe jak do tego zastosowania.
Bez przesady, funkcje biblioteki standardowej nie są aż takim bloatem.
Użycie sscanf dodaje 2kB do wynikowej binarki.
[gof@raid /tmp]$ cat test1.c
#include <stdio.h>
int main()
{
int i;
sscanf("test", "%d", &i);
}
[gof@raid /tmp]$ avr-gcc -mmcu=atmega8 -Os -o test1.elf test1.c
[gof@raid /tmp]$ avr-objcopy -j .text -j .data -O binary test1.elf test1.bin
[gof@raid /tmp]$ ls -l test1.bin
-rwxr-xr-x 1 gof gof 1950 02-27 10:07 test1.bin
[gof@raid /tmp]$
Jak nie ma miejsca, to jasne że robi się różne sztuczki. Ale nie warto na
siłę dokładać sobie pracy i tworzyć sytuacji, które mogą generować błędy,
gdy nie ma takiej potrzeby. Co innego jakiś mały attiny z trzypoziomowym
stosem, w którym rzeźbi się w assemblerze (chociaż w C też się da, jeżeli
napisze się własny crt, wtedy C to bardziej zestaw makr dla assemblera),
a co innego atmega, na którą z powodzeniem można pisać w C++ (avr-g++
dobrze sobie radzi z optymalizacją, nie ma wprawdzie wyjątków, ale jest
to co dla mnie najważniejsze - obiektowość i RAII).
> Znam takich - najczęściej speców od Javy i wszystkich możliwych
> frameworków. Program wynikowy puchnie w takich przypadkach o cały worek
> różnistych bibliotek a czas kompilacji sięga zenitu - tylko po to aby
> kilka linii mniej napisać własnego kodu (niemały czas potrzebny na
> obczajenie każdego nowego frameworka pomijam).
Ja też znam. To ekstrema. Trzeba znaleźć złoty środek. stdio to nie jest
wg mnie aż taki bloat, żeby pisać własne automaty. To tylko odczytanie
inta z linii.
Jak kończą się zasoby (pamięć albo limit czasu wykonania), to wiadomo,
że przedkłada się je nad wygodę pisania i łatwość debugowania i wymyśla
własne koło, skrojone pod konkretne rozwiązanie.
--
"Project Manager to człowiek, który myśli, że jak weźmie
dziewięć kobiet, to urodzą dziecko w miesiąc."
Najnowsze wątki z tej grupy
- e-paper
- 60 mA dużo czy spoko?
- Dziwne zachowanie magistrali adresowej w 8085
- Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- Jaki silikon lub może klej?
- Smar do video
- Litowe baterie AA Li/FeS2 a alkaliczne
- "ogrodowa linia napowietrzna"
- jaki zasilacz laboratoryjny
- jaki zasilacz laboratoryjny
- Puszka w ziemię
- T-1000 was here
- Ściąganie hasła frezem
- Koszyk okrągły, walec 3x AA, na duże paluszki R6
- Brak bolca ochronnego ładowarki oznacza pożar
Najnowsze wątki
- 2025-02-15 Łódź => NodeJS Developer <=
- 2025-02-15 Dęblin => Node.js / Fullstack Developer <=
- 2025-02-15 Warszawa => Developer .NET (mid) <=
- 2025-02-15 Wrocław => Senior SAP Support Consultant (SD) <=
- 2025-02-14 Zdalne załączanie grzałki bojlera elektrycznego
- 2025-02-14 Warszawa => Kierownik ds. kluczowych Klientów <=
- 2025-02-14 Częstochowa => Product Manager - Systemy infrastruktury teleinformaty
- 2025-02-14 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2025-02-14 Warszawa => Data Engineer (Tech Leader) <=
- 2025-02-14 Czy ma sens grupa news:pl.soc.polityka-prawna ? :-)
- 2025-02-14 e-paper
- 2025-02-14 Gliwice => Business Development Manager - Network and Network Security
- 2025-02-14 Warszawa => System Architect (Java background) <=
- 2025-02-14 Katowice => Senior Field Sales (system ERP) <=
- 2025-02-14 Wrocław => Specjalista ds. Sprzedaży (transport drogowy) <=