Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2007-04-24 23:34:24

  zimzum - Członek DUG

zimzum
Członek DUG
Zarejestrowany: 2006-09-04

gcc -static

Mam maly problem z gcc. Napisalem krotki programik, ktory musi obrabiac duze liczby caklowite. Przy zwyklej kompilacji wywala jakies glupoty (niepoprawny wynik), ale jak skompiluje go z opcja

Kod:

-static

to wszystko jest ok. Caly problem polega na tym, ze zielonego pojecia nie mam, co robi ta opcja i nigdzie nie moge tego znalezc. Jakby co to:

Kod:

$ gcc --version
gcc (GCC) 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)

Aha, glownie problem mam z long long int. Dla zwyklych int'ow jest ok (tzn wielkosci z zakresu int).

Offline

 

#2  2007-04-24 23:59:30

  zielkam - były zielony_83 :)

zielkam
były zielony_83 :)
Skąd: Zawiercie
Zarejestrowany: 2006-05-06
Serwis

Re: gcc -static

google mówi to
link


Zostałeś zarejestrowany jako użytkownik #416423 przez.. :mrgreen:
##
FluxboxPL | Mój Lepszy Świat | UnixyPL | Telenia VOIP dla ISP
JID: zielony@jabster.pl

Offline

 

#3  2007-04-25 00:17:44

  harry666t - Członek DUG

harry666t
Członek DUG
Zarejestrowany: 2007-01-28

Re: gcc -static

na chłopski rozum: kompiluje statycznie, czyli włącza biblioteki do binarki.

porównaj rozmiar binarki ze -static i bez.

a po -static jeszcze zrób strip, to nieco zmniejszy rozmiar (wywali niepotrzebne symbole).


[ /\/\/\ o_0 ----->>>       Ascii Art Userbar User ]

"steal and steal and steal some more and give it to all your friends and keep on stealin'"
- Reznor

Offline

 

#4  2007-04-25 00:26:48

  zimzum - Członek DUG

zimzum
Członek DUG
Zarejestrowany: 2006-09-04

Re: gcc -static

Dzieki za pomoc. Jakos tak dlubalem w google i na nic nie moglem trafic. CHyba jakis slepy dzisiaj jestem.

Durna rzecz zrobilem, bo nie zerowalem zmiennych na poczatku. Widocznie opcja -static to taka optymalizacja, ktora zeruje pamiec :-)

Offline

 

#5  2007-04-25 17:08:16

  harry666t - Członek DUG

harry666t
Członek DUG
Zarejestrowany: 2007-01-28

Re: gcc -static

Wrzuciłbyś kod to bym go przejrzał. "The more eyes..."


[ /\/\/\ o_0 ----->>>       Ascii Art Userbar User ]

"steal and steal and steal some more and give it to all your friends and keep on stealin'"
- Reznor

Offline

 

#6  2007-04-26 00:30:51

  zimzum - Członek DUG

zimzum
Członek DUG
Zarejestrowany: 2006-09-04

Re: gcc -static

Prosze:

Kod:

#include <stdio.h>
#include <stdlib.h>
#define ll long long int

int main()
{

  ll i = 0;
  ll d = 0;
  ll reszta = 0;
  ll d1 = 0;
  ll suma = 0;
  ll m,l,k,s;
  ll c[105];
  ll r[105];
  char c1;
  
  scanf("%lld %lld %lld %lld", &m, &l, &k, &s);

  /*bez tej inicjalizacji wszystko sie sypiue*/
  for(i = 0; i < m; i++){
      scanf("%lld", &c[i]);
      scanf("%c",&c1);
  }

  for(i =0; i < 105; i++) r[i] = 0;
  for(i = 0; i < l; i++){
      scanf("%lld", &d);
      scanf("%c",&c1);
      scanf("%lld", &d1);
      r[d-1] += d1;
      scanf("%c",&c1);
  }

  for(i = 0; i < m; i++){
      if(r[i] > 0){
          d = i;
          d1 = r[i] / k;
          reszta = r[i]%k;
          if( c[d] * reszta < s ) suma = suma + d1*k*c[d] - (d1*s);
          else{
              if(d1 * k != r[i]) d1++;  
              suma = suma + r[i] *c[d] - (d1)*s;
          }
      }
  }

  printf("%lld", suma);

  return 0;

}

Pisalem to na szybko, wiec jest troche syfiasto :-)

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Możesz wyłączyć AdBlock — tu nie ma reklam ;-)