heniczyna utworzono 6 maja 2009 utworzono 6 maja 2009 Siemanko, taki kawałek kodu: for(i){ for(j) { printf("%x ",tablica[i][j]); } printf("\n");} wyświetla szesnastkowo elementy tablicy poprawnie, zaś gdy chcę użyć do tego celu takiego kawałka kodu: for(i){ for(j) { cout<<hex<<tablica[i][j]; } cout << "\n";} wyskakuje coś, jakieś krzaki. Jeżeli manipulatory cout<<hex są odpowiednikiem printf("%x ",zmienna); to czemu nie chce to działać ?
luq komentarz 6 maja 2009 komentarz 6 maja 2009 for(i) ? To Ci działa? Dawno w cpp nie pisałem ale ja spotkałem się z zapisem. std::cout.setf(std::ios::hex);std::cout << 123 << std::endl; Wydaje mi się, że chodzi o nie korzystanie przestrzeni nazw ios w Twoim kodzie. Spróbuj tak: std::cout << std::ios::hex << 123 << std::endl;
heniczyna komentarz 10 maja 2009 Autor komentarz 10 maja 2009 (edytowane) to co napisałeś działa, ale dla pojedynczych stałych, jednak chodzi mi o wyświetlanie elementów tablicy dwuwymiarowej, for(i=0;i<4;i++) { for(j=0;j<4;j++) { tablica[j][i] = in[i*2 + j]; cout << hex << tablica[j][i] << "\t"; } cout << "\n"; } wydaję mi się, że powinno działać jednak tak nie jest. Każdy element tablicy 4x4 ma być przedstawiony heksadecymalnie. Dane w tablicy są wprowadzane szesnastkowo, więc tym bardziej powinno wszystko działać jednak nie działa. Z Twoimi propozycjami próbowałem na wiele sposób, jednak nie działało. Potrzebne są jakieś dodatkowe deklaracje? biblioteki?
wojtek4p4 komentarz 31 sierpnia 2009 komentarz 31 sierpnia 2009 Dawno w cpp nie pisałem ale ja spotkałem się z zapisem. std::cout.setf(std::ios::hex);std::cout << 123 << std::endl; Można też dać po #include <...> using namespace std; I sprawdź czy dałeś to: #include <iostream>
Wciąż szukasz rozwiązania problemu? Napisz teraz na forum!
Możesz zadać pytanie bez konieczności rejestracji - wystarczy, że wypełnisz formularz.