Cześć, mam pewien problem z którym nie mogę się uporać, a więc: Mam char* który wskazuje na pewien adres w pamięci, który zawiera tekst, tekst powinien wyglądać tak: "Mały" jednak za nic nie mogę zgadnąć co to za kodowanie, albo jak to odwrócić. Gdy rzutuje tego chara na inta otrzymuję liczbę -77, z pozoru wydaję się całkowicie przypadkowe, ale... gdy zamienimy -77 z dec na hex otrzymamy "FFFFFFFFFFFFFFB3" interesujące są dwie ostatnie
@morsisko: KrzaQ2 ma rację. Masz chara, który binarnie wygląda tak: 10110011. Signed char powie, że to -77, unsigned powie, że to 179 (a w ISO8859-2 to właśnie 'ł'). Castowanie na signed int spowodowało, że -77 jest teraz zapisane na większej ilości bitów: 11111111 1111111 11111111 10110011, ale to nadal -77. Trzeba było albo wypisać jako %u w printfie.
Nie dopisuj żadnych "F"ów ani nic. Dobrze działa jak jest.
Nie jestem specjalistą od Qt, więc nie pomogę dokładnie, ale powiem Ci, co się wyprawia wg mnie: masz tekst w kodowaniu ISO-8859-2 lub Windows-1250, patrząc po tym 'ł'. Qt myśli, że to tekst zakodowany w UTF-8, co znaczy, że znaki 0-127 są takie same niezależnie od kodowania. Dochodzi do bajtu z tym nieszczęsnym 'ł' i natrafia na problem, bo nie potrafi go odpowiednio wyświetlić. Poczytaj tutaj, jak działa UTF8: https://pl.wikipedia.org/wiki/UTF-8
Mircy o co tu chodzi. Zmieniłem uprawnienia na 777, zmieniłem właściciela z root na siebie ale dalej nie mogę nic skopiować z tych katalogów. Ani zmienić ich nazwy. Co jest nie tak? Kropka w nazwie przeszkadza? Jak ją usunąć, skoro nawet rename w terminalu nie chce współpracować.
@Locked1986: co Ci zwraca ls -la katalogktorywidzimy? Rename plików wymaga uprawnienia write dla katalogu, w którym jest plik. Możesz wejść do tych katalogów? Może coś z atrybutami (lsattr)?
#linux zaktualizowalem sobie dzisiaj kernel w #archlinux nigdy nie mialem wiekszych problemow, ale tym razem udalo sie zepsuc xorg i siec za jednym razem. Swoja droga dziwna sprawa, nie ma zadnego interfejsu sieciowego oprocz lo. Jutro bede mial co robic ( ͡°͜ʖ͡°)
@nocneszczury: Kiedys miałem podobną historię. Przy upgradzie systemu, w tym kernela, system nie chciał wstać, sieci nie było, Xów nie było. Posprawdzałem i okazało się, że w /etc/fstab nie miałem mounta na /boot (w miare świeża instalacja). System wstawał, ale nowe jajko rozkładało się w folderze /boot na głównym dysku, a nie na partycji, która miała byc montowana w /boot. #archlinux