«c» 태그된 질문

C는 시스템 프로그래밍 (OS 및 임베디드), 라이브러리, 게임 및 크로스 플랫폼에 사용되는 범용 프로그래밍 언어입니다. 이 태그는 달리 지정하지 않는 한 ISO 9899 표준 (최신 버전, 9899 : 2018, C89, c99, c11 등으로 버전 별 요청에 태그 지정)에 정의 된대로 C 언어와 관련된 일반적인 질문과 함께 사용해야합니다. C는 C ++과 구별되며 합리적인 이유없이 C ++ 태그와 결합해서는 안됩니다.

1
결정적인 C 책 가이드 및 목록
이 질문에 대한 답변은 지역 사회 노력 입니다. 이 게시물을 개선하려면 기존 답변을 수정하십시오. 현재 새로운 답변이나 상호 작용을받지 않습니다. 이 질문은 커뮤니티에서 관리하는 양질의 도서 목록을씨 다양한 기술 수준을 목표로 프로그래밍 언어. C는 온라인 자습서를 읽음으로써 이동이 어려운 복잡한 프로그래밍 언어입니다. 포괄적 인 책은 종종 언어를 배우는 가장 좋은 …
400 c 

25
alloca () 사용이 왜 좋은 습관으로 간주되지 않습니까?
alloca()의 경우와 같이 힙이 아닌 스택에 메모리를 할당합니다 malloc(). 그래서 루틴에서 돌아올 때 메모리가 해제됩니다. 따라서 실제로 이것은 동적으로 할당 된 메모리를 확보하는 문제를 해결합니다. 할당 된 메모리를 확보 malloc()하는 것은 심각한 골치 거리이며, 놓친 경우 모든 종류의 메모리 문제를 일으 킵니다. alloca()위의 기능에도 불구하고 사용이 권장되지 않는 이유는 무엇 …
400 c  stack  malloc  allocation  alloca 

16
정적 링크와 동적 링크
특정 상황에서 동적 연결보다 정적 연결을 선택하거나 그 반대로 선택해야하는 성능상의 이유가 있습니까? 나는 다음을 들었거나 읽었지만 그 주제에 대해 그 진실성을 보증 할만 큼 충분히 알지 못합니다. 1) 정적 연결과 동적 연결의 런타임 성능 차이는 대개 무시할 만합니다. 2) (1) 정적 링크를 사용하면 컴파일러가 코드와 라이브러리 코드를 모두 최적화 …

12
현재 C 또는 C ++ 표준 문서는 어디에서 찾을 수 있습니까?
이 질문에 대한 답변은 지역 사회 노력 입니다. 이 게시물을 개선하려면 기존 답변을 수정하십시오. 현재 새로운 답변이나 상호 작용을받지 않습니다. На этот вопрос есть ответы на 스택 오버플로 на русском : Где взять стандарт C ++? 많은 질문에 대한 답은 "표준"에서 찾을 수 있습니다. 그러나 어디서 찾을 수 있습니까? 온라인으로하는 …
394 c++  c  standards  c++-faq 

11
부동 소수점 값을 비교하는 것이 얼마나 위험합니까?
해상도 독립 좌표계로 인해 UIKit사용하는 것을 알고 CGFloat있습니다. 그러나 때마다 나는 예를 들어 있는지 확인하고자 frame.origin.x한다 0그것이 나를 아프게 느낄 수 있습니다 : if (theView.frame.origin.x == 0) { // do important operation } 하지인가 CGFloat와 비교할 때 잘못된 반응에 취약 ==, <=, >=, <, >? 부동 소수점이며 0.0000000000041예를 들어 정밀도 …

6
알려진 값 세트를 사용하여 정수가 두 정수 사이에 있는지 판별하는 가장 빠른 방법
x >= start && x <= end정수가 두 정수 사이에 있는지 테스트하는 C 또는 C ++ 보다 빠른 방법이 있습니까? 업데이트 : 내 특정 플랫폼은 iOS입니다. 이것은 주어진 사각형에서 픽셀을 원으로 제한하는 상자 흐림 기능의 일부입니다. 업데이트 : 허용 된 답변을 시도한 후 정상적인 x >= start && x <= …
389 c++  c  performance  math 

10
매개 변수가없는 함수 (실제 함수 정의와 비교하여)가 컴파일되는 이유는 무엇입니까?
방금 컴파일하는 이유에 대해 혼란스러워하는 누군가의 C 코드를 발견했습니다. 이해할 수없는 두 가지 사항이 있습니다. 첫째, 함수 프로토 타입에는 실제 함수 정의에 비해 매개 변수가 없습니다. 둘째, 함수 정의의 매개 변수에 유형이 없습니다. #include <stdio.h> int func(); int func(param) { return param; } int main() { int bla = func(10); …

9
까다로운 C 코드의이 네 줄에 대한 개념
이 코드는 왜 출력을 제공 C++Sucks합니까? 그 뒤에 개념은 무엇입니까? #include <stdio.h> double m[] = {7709179928849219.0, 771}; int main() { m[1]--?m[0]*=2,main():printf((char*)m); } 여기에서 테스트 하십시오 .
384 c  deobfuscation 

11
무료는 얼마나 많은 것을 무료로 알 수 있습니까?
C 프로그래밍에서, 당신은 free에 대한 인수로 당신이 좋아하는 어떤 종류의 포인터라도 전달할 수 있습니다. 그것은 할당 된 메모리의 크기를 어떻게 알 수 있습니까? 일부 함수에 포인터를 전달할 때마다 크기도 전달해야합니다 (즉, 10 요소의 배열은 배열의 크기를 알기 위해 매개 변수로 10을 받아야합니다). 그러나 크기를 전달할 필요는 없습니다. 무료 기능. 왜 …
384 c  size  pointers  free 





14
Linux에서 pthread_create에 대한 정의되지 않은 참조
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: creating …

7
루프 순서가 2D 배열을 반복 할 때 성능에 영향을 미치는 이유는 무엇입니까?
아래는 제가 전환하는 것을 제외하고는 거의 동일한 두 개의 프로그램입니다 i및 j주변 변수. 둘 다 다른 시간에 실행됩니다. 왜 이런 일이 발생했는지 설명해 주시겠습니까? 버전 1 #include <stdio.h> #include <stdlib.h> main () { int i,j; static int x[4000][4000]; for (i = 0; i < 4000; i++) { for (j = …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.