Nowe posty

xx KDE Wallet (7)
2019-03-24, 08:51:55
xx MacOS vs Linux (17)
2019-03-22, 21:20:08
xx [rozwiązane] Jak zainstalować Firefox'a 66 w Mint'cie 19.1? (15)
2019-03-22, 19:24:47
xx Dziwne zachowanie Firefoxa 65.0.1 (8)
2019-03-22, 11:49:13
xx Gdzie jest link do MOJE POSTY? (2)
2019-03-22, 07:34:45
xx HUMBLE BOOK BUNDLE: LINUX BY WILEY (0)
2019-03-22, 07:24:44
xx [ Gra Za Darmo on-line ] Albion Online (1)
2019-03-22, 07:21:33
xx Mint 19.1 - jest na wpół po polsku i angielsku, no szlag... (5)
2019-03-20, 10:49:16
xx brak uprawnień przy pobieraniu (3)
2019-03-20, 02:57:12
xx Reklamy (2)
2019-03-19, 14:58:34

Autor Wątek: C++ i ochrona pamieci  (Przeczytany 5763 razy)

Offline Tomek abdul Jabar

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 2
    • Zobacz profil
C++ i ochrona pamieci
« dnia: 2005-06-12, 22:35:10 »
Witam. jestem totalnym newbie :) mam takie pytanie, czy istnieje jakaś dystrybucja Linuksa z domyślnym lub nie domyślnym wbudowanym środowiskiem graficznym XPde?
Zgóry dzięki za odpowiedz!

Offline Konrad Zapałowicz

  • Users
  • Stały bywalec
  • ***
  • Wiadomości: 160
    • Zobacz profil
C++ i ochrona pamieci
« Odpowiedź #1 dnia: 2005-06-13, 07:03:25 »
Skoro najbardziej aktualna wersja Xpde to beta, a dystrybucje zazwyczaj są przygotowywane z pakietów \\"stable\\" to strzelałbym, że takowej nie ma. Ale nic nie stoi na przeszkodzie byś sobie nie mógł instalnąć ze źródełek.

Pozdrawiam,
Bergo

Offline Konrad Zapałowicz

  • Users
  • Stały bywalec
  • ***
  • Wiadomości: 160
    • Zobacz profil
C++ i ochrona pamieci
« Odpowiedź #2 dnia: 2005-06-13, 07:05:59 »
Ściągasz źródełka i robisz to:
General installation instructions:
 -Decompress the tar.gz in /usr/share as root
 -Edit the .xinitrc file of the user you want to run XPde and put this line:
 /usr/share/xpde/bin/startxpde
 -Start X


Offline Paweł Kobyliński

  • Users
  • Użytkownik
  • **
  • Wiadomości: 50
    • Zobacz profil
C++ i ochrona pamieci
« Odpowiedź #3 dnia: 2005-06-12, 21:23:20 »
Pisze juz w C++ od pewnego czasu ale cos takiego zdarzylo mi sie po raz pierwszy, mianowicie wszystko sie ladnie skompilowalo bez zadnych problemow ale gdy wloncze program, wpisze jakas cyfre ( program matematyczny) i nacisne Enter wyskakuje mi, "Naruszenie ochrony pamięci ", nie wiem co z tym zrobic ,moze kto moglby mi pomoc ?? Dziekuje z gory .

Kobcio

Offline Marcin Maćczak

  • Users
  • Stały bywalec
  • ***
  • Wiadomości: 235
    • Zobacz profil
C++ i ochrona pamieci
« Odpowiedź #4 dnia: 2005-06-12, 21:44:59 »
standardowy blad pod linuxem jak sie pisze programy :]
nikt Ci  nie pomoze dopoki nie pokazesz kodu programu
i sproboj skompilowac z opcja -Wall moze poda jakies warningi a jak nie to trza szukac recznie w kodzie :]

pozdrawiam
Maciasz

Offline Paweł Kobyliński

  • Users
  • Użytkownik
  • **
  • Wiadomości: 50
    • Zobacz profil
C++ i ochrona pamieci
« Odpowiedź #5 dnia: 2005-06-12, 21:51:52 »
Wiecie strasznie siem wyglupilem, bo juz to rozwiazalem i niepotrzebny byl ten post, ale jak juz zaczalem to skoncze,
kod programu jest taki :

#include
#include
#include
using namespace std;

main()
{
int l = 0 ;
int a = 0 ;
int p[20] ;
cout << "Podaj liczbę do przekształcenia : n";
cin >> l;
if (l == 0)
 {cout << "Wynik = 0 n";}
else if (l == 1)
 {cout << "Wynik = 1 n";}
 else {
do {
 if ((l-(l/2)*2) == 0) {
  {p[a] = 0;
   ++a;
   l = l/2;}
  }
 if ((l-(l/2)*2) > 0) {
  {p[a] = 1;
   ++a;
   l = l/2;}
 }
}
while (l >= 2);
p[a] = 1;
cout << "Wynik = ";
do {
cout << p[a];
 --a;
 }
while(a >= 0);
cout << "n";
 }
}
 wczesniej zamiast cin i cout uzywalem printf i scanf i chyba to bylo zrodlem problemu bo jak wszystko zamienilem i dodalem " using namespace std" ( swoja droga to co to jest bo dodalem to na wyczucie ) to wszystko zaczelo pasowac. A sam program sluzy do zamiany liczb z dziesiatnych na binarne.

Kobcio

Offline Konrad Zapałowicz

  • Users
  • Stały bywalec
  • ***
  • Wiadomości: 160
    • Zobacz profil
C++ i ochrona pamieci
« Odpowiedź #6 dnia: 2005-06-13, 06:44:48 »
>  wczesniej zamiast cin i cout uzywalem printf i scanf i chyba to bylo zrodlem problemu bo jak
 
Pamiętaj, że scanf trzeba przekazać adres zmiennej pod który ma podstawiać wczytaną wartość.
Jak masz:
int a
To podstawiasz do scanf:
&a

Jak podstawisz samo a bez referencji to dostaniesz naruszenie ochrony pamięci.

Pozdrawiam,
Bergo