Pytania otagowane jako c

C jest językiem programowania ogólnego przeznaczenia używanym do programowania systemu (system operacyjny i wbudowane), bibliotek, gier i platform. Tego znacznika należy używać z ogólnymi pytaniami dotyczącymi języka C, zgodnie z definicją w normie ISO 9899 (najnowsza wersja, 9899: 2018, o ile nie określono inaczej - także znaczniki specyficzne dla wersji za pomocą c89, c99, c11 itd.). C różni się od C ++ i nie należy go łączyć ze znacznikiem C ++ bez uzasadnionego powodu.

1
Przewodnik i lista definitywnych książek C
Odpowiedzi na to pytanie są dziełem społeczności . Edytuj istniejące odpowiedzi, aby poprawić ten post. Obecnie nie akceptuje nowych odpowiedzi ani interakcji. To pytanie próbuje zebrać prowadzoną przez społeczność listę wysokiej jakości książek na stroniedo język programowania, ukierunkowany na różne poziomy umiejętności. C jest złożonym językiem programowania, który jest trudny …
400 c 

25
Dlaczego korzystanie z funkcji splita () nie jest uważane za dobrą praktykę?
alloca()przydziela pamięć na stosie, a nie na stercie, jak w przypadku malloc(). Kiedy wracam z rutyny, pamięć zostaje uwolniona. Tak więc faktycznie rozwiązuje to mój problem zwalniania dynamicznie alokowanej pamięci. Zwolnienie pamięci przydzielonej przez malloc()to poważny ból głowy i jeśli w jakiś sposób pominięty, prowadzi do różnego rodzaju problemów z …
400 c  stack  malloc  allocation  alloca 

16
Łączenie statyczne a dynamiczne
Czy istnieją jakieś istotne powody, dla których warto wybrać łączenie statyczne zamiast dynamicznego lub odwrotnie w niektórych sytuacjach? Słyszałem lub czytałem poniższe, ale nie wiem wystarczająco dużo na ten temat, by ręczyć za ich prawdziwość. 1) Różnica w wydajności środowiska wykonawczego między łączeniem statycznym a łączeniem dynamicznym jest zwykle nieistotna. …

12
Gdzie znajdę aktualne standardowe dokumenty C lub C ++?
Odpowiedzi na to pytanie są dziełem społeczności . Edytuj istniejące odpowiedzi, aby poprawić ten post. Obecnie nie akceptuje nowych odpowiedzi ani interakcji. Czy masz problem z przepełnieniem stosu w programie : Czy znasz C ++? Na wiele pytań odpowiedź wydaje się znajdować w „standardzie”. Gdzie to jednak znajdujemy? Najlepiej online. …
394 c++  c  standards  c++-faq 

11
Jak niebezpieczne jest porównywanie wartości zmiennoprzecinkowych?
Znam UIKitzastosowania z CGFloatpowodu niezależnego od rozdzielczości układu współrzędnych. Ale za każdym razem, gdy chcemy sprawdzić, czy na przykład frame.origin.xjest 0to sprawia, że czuję się chory: if (theView.frame.origin.x == 0) { // do important operation } Nie jest CGFloatpodatny na fałszywych alarmów przy porównywaniu z ==, <=, >=, <, >? …

6
Najszybszy sposób ustalenia, czy liczba całkowita znajduje się między dwiema liczbami całkowitymi (włącznie) ze znanymi zestawami wartości
Czy istnieje szybszy sposób niż x >= start && x <= endw C lub C ++ sprawdzenie, czy liczba całkowita znajduje się między dwiema liczbami całkowitymi? AKTUALIZACJA : Moja konkretna platforma to iOS. Jest to część funkcji rozmycia ramki, która ogranicza piksele do okręgu w danym kwadracie. AKTUALIZACJA : Po …
389 c++  c  performance  math 

10
Dlaczego kompiluje się funkcję bez parametrów (w porównaniu z rzeczywistą definicją funkcji)?
Właśnie natknąłem się na czyjś kod C, którego nie rozumiem, dlaczego się kompiluje. Są dwa punkty, których nie rozumiem. Po pierwsze, prototyp funkcji nie ma parametrów w porównaniu z rzeczywistą definicją funkcji. Po drugie, parametr w definicji funkcji nie ma typu. #include <stdio.h> int func(); int func(param) { return param; …


11
Skąd darmo wie, ile kosztuje?
W programowaniu C możesz przekazać dowolny wskaźnik, który ci się podoba, jako argument do zwolnienia, skąd on zna wielkość przydzielonej pamięci do zwolnienia? Ilekroć przekazuję wskaźnik do jakiejś funkcji, muszę również przekazać rozmiar (tj. Tablica 10 elementów musi otrzymać 10 jako parametr, aby znać rozmiar tablicy), ale nie muszę przekazywać …
384 c  size  pointers  free 





14
Niezdefiniowane odniesienie do pthread_create w systemie Linux
Wybrałem następujące demo z Internetu z https://computing.llnl.gov/tutorials/pthreads/ #include <pthread.h> #include <stdio.h> #define NUM_THREADS 5 void *PrintHello(void *threadid) { long tid; tid = (long)threadid; printf("Hello World! It's me, thread #%ld!\n", tid); pthread_exit(NULL); } int main (int argc, char *argv[]) { pthread_t threads[NUM_THREADS]; int rc; long t; for(t=0; t<NUM_THREADS; t++){ printf("In main: …


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.