Podczas kompilowania kodu C i patrzenia na asembler wszystkie stosy rosną do tyłu w następujący sposób: _main: pushq %rbp movl $5, -4(%rbp) popq %rbp ret -4(%rbp)- Czy to oznacza, że wskaźnik bazowy lub wskaźnik stosu przesuwają się w dół po adresach pamięci zamiast w górę? Dlaczego? Zmieniłem $5, -4(%rbp)się $5, …
Kończę studia za kilka tygodni, a moje CV (zgodnie z oczekiwaniami) zawiera listę języków, z którymi miałem doświadczenie. Wcześniej umieściłem „C / C ++” , jednak wtedy nie miałem tak dużego doświadczenia z tymi dwoma językami, jak teraz. Teraz, gdy formalnie nauczyłem się tych dwóch języków, stało się dla mnie …
Czytałem skądś, że podczas używania C ++ zaleca się nie używać wskaźników. Dlaczego wskaźniki są tak złym pomysłem, gdy używasz C ++. Dla programistów C przyzwyczajonych do używania wskaźników, jaka jest lepsza alternatywa i podejście w C ++?
Czytając 21 wiek C Doszedłem do rozdziału 6 w sekcji „Oznaczanie wyjątkowych wartości liczbowych za pomocą NaNs” , gdzie wyjaśnia użycie bitów w mantysie do przechowywania niektórych dowolnych wzorów bitów, wykorzystywania ich jako znaczników lub wskaźników (książka wspomina że WebKit korzysta z tej techniki). Nie jestem do końca pewien, czy …
Czytałem wątek zatytułowany „strlen vs sizeof” na CodeGuru , a jedna z odpowiedzi mówi, że „w każdym razie [sic] złą praktyką jest inicjowanie [sic] chartablicy z dosłownym ciągiem znaków”. Czy to prawda, czy to tylko jego (choć „elitarny członek”) opinia? Oto oryginalne pytanie: #include <stdio.h> #include<string.h> main() { char string[] …
Problem z próbą użycia Google do znalezienia samouczków lub odpowiedzi dla języka programowania C polega na tym, że C nie jest wystarczająco wyrazistą nazwą, aby zawęzić wyszukiwanie. Nawet w połączeniu ze słowami kluczowymi takimi jak „Programowanie” i / lub „Język” daje wyniki głównie dla C ++, C # i Objective-C. …
Używam wszędzie niepodpisanych int i nie jestem pewien, czy powinienem. Może to być od kolumny identyfikatora klucza podstawowego bazy danych do liczników itp. Jeśli liczba nigdy nie powinna być ujemna, zawsze będę używał znaku int bez znaku. Jednak zauważam z kodu innego, że nikt inny tego nie robi. Czy przeoczyłem …
W projekcie znalazłem plik math.cz dużym nagłówkiem GPL i ... //------------------------------------------------------------------------------ /// Returns the minimum value between two integers. /// \param a First integer to compare. /// \param b Second integer to compare. //------------------------------------------------------------------------------ unsigned int min(unsigned int a, unsigned int b) { if (a < b) { return a; …
Wiele osób pisze „C / C ++”, jakby to było to samo. Chociaż mają wiele podobieństw, najwyraźniej nie są takie same. Ale jakie są naprawdę podstawowe różnice między C i C ++? Czy C ++ jest ulepszoną wersją C, czy też są funkcje w C, które nie istnieją w C …
Obecnie pracuję zawodowo jako inżynier oprogramowania współpracujący z systemem operacyjnym Android. Pracujemy nad zintegrowaniem naszej platformy jako natywnego demona wśród innych aspektów projektu. Pracuję przede wszystkim w Javie, tworząc aplikacje SDK i Android, ale pomagam przy platformie w C / C ++. W każdym razie jestem bardzo zainteresowany zawodową pracą …
W przypadku operatorów binarnych mamy zarówno operatory bitowe, jak i logiczne: & bitwise AND | bitwise OR && logical AND || logical OR NIE (jednoargumentowy operator) zachowuje się jednak inaczej. Jest ~ za bitowe i! dla logiki. Rozumiem, że NIE jest operacją jednoargumentową w przeciwieństwie do AND i OR, ale …
Wcześniej używałem tylko języków programowania obiektowego (C ++, Ruby, Python, PHP), a teraz uczę się C. Trudno mi znaleźć właściwy sposób robienia rzeczy w języku bez pojęcia 'Obiekt'. Zdaję sobie sprawę, że można używać paradygmatów OOP w C, ale chciałbym nauczyć się C-idiomatycznego sposobu. Podczas rozwiązywania problemu programistycznego, pierwszą rzeczą, …
Usuwam dołączenia w projekcie C ++, nad którym pracuję, i wciąż zastanawiam się, czy powinienem jawnie dołączyć wszystkie nagłówki użyte bezpośrednio w określonym pliku, czy też powinienem zawierać tylko absolutne minimum. Oto przykład Entity.hpp: #include "RenderObject.hpp" #include "Texture.hpp" struct Entity { Texture texture; RenderObject render(); } (Załóżmy, że deklaracja przekazania …
Karierę programistyczną rozpocząłem w BASIC, w 9 klasie. Nauczyłem się trochę języka BASIC, pisząc proste programy do dodawania, odejmowania i drukowania. Potem poszedłem na uniwersytet i podjąłem Informatykę i Inżynierię Systemów. W pierwszym roku uczyłem się C i mam nad tym dobrą władzę. Następnie nauczyłem się C ++ w drugim …
Programowanie nie jest mi obce. Najpierw zacząłem robić znaczniki (HTML, teraz proszę się ze mnie nie śmiać), kiedy miałem 12 lat, i trochę BASIC, kiedy miałem 13 lat (w tym momencie wiele wiedziałem o schematach blokowych, pseudokodach), ale potem zostałem upomniany Biologia w liceum, a zatem przeoczyła „prawdziwą” znajomość programowania …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.