«c» 태그된 질문

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

10
오브젝티브 -C : BOOL vs Bool
"신형" BOOL( YES, NO)을 보았습니다 . 나는이 유형이 거의 문자와 같다는 것을 읽었습니다. 테스트를 위해 나는 : NSLog(@"Size of BOOL %d", sizeof(BOOL)); NSLog(@"Size of bool %d", sizeof(bool)); 두 로그 모두에 "1"이 표시되는 것을 확인하는 것이 좋습니다 (때로는 C ++ bool은 int이고 sizeof는 4 임). 그래서 부울 유형이나 무언가에 문제가 있는지 …
192 c  objective-c  types  boolean 

19
C 또는 C ++에서 이진 리터럴을 사용할 수 있습니까?
이진수로 작업해야합니다. 나는 쓰기를 시도했다 : const x = 00010000; 그러나 작동하지 않았습니다. 와 같은 값을 가진 16 진수를 사용할 수 있다는 00010000것을 알고 있지만 이진 숫자에 대한 C ++에 유형이 있는지, 그렇지 않은 경우 내 문제에 대한 다른 해결책이 있습니까?
191 c++  c  binary 

3
16 진의 printf () 형식화
이것은 중요한 질문보다 호기심 많은 쿼리이지만 16 진수를 선행 0으로 숫자로 인쇄 할 때 왜 %#08X다음과 같은 결과가 표시되지 0x%08X않습니까? 전자를 사용하려고하면 08서식 플래그가 제거되고 그냥 작동하지 않습니다 8. 다시 나는 단지 궁금했다.
191 c  printf  hex 


12
/ proc / self / exe없이 현재 실행 파일 경로 찾기
Linux는 / proc / self / exe로 쉽게 사용할 수 있습니다. 그러나 크로스 플랫폼 인터페이스를 사용하여 C / C ++에서 현재 응용 프로그램 디렉토리를 찾는 편리한 방법이 있는지 알고 싶습니다. argv [0]와 관련하여 일부 프로젝트가 진행되는 것을 보았지만 완전히 신뢰할 수있는 것 같지는 않습니다. 예를 들어, / proc /가없는 Mac …
190 c++  c  linux  macos  executable 

6
배열의 주소는 C의 값과 어떻게 다릅니 까?
다음 코드 비트에서 포인터 값과 포인터 주소가 예상과 다릅니다. 그러나 배열 값과 주소는 그렇지 않습니다! 어떻게 이럴 수있어? 산출 my_array = 0022FF00 &my_array = 0022FF00 pointer_to_array = 0022FF00 &pointer_to_array = 0022FEFC #include <stdio.h> int main() { char my_array[100] = "some cool string"; printf("my_array = %p\n", my_array); printf("&my_array = %p\n", &my_array); …
189 c  pointers  arrays 

12
C에서 가변 함수의 호출을 전달하십시오.
C에서는 가변 함수의 호출을 전달할 수 있습니까? 에서처럼 int my_printf(char *fmt, ...) { fprintf(stderr, "Calling printf with fmt %s", fmt); return SOMEHOW_INVOKE_LIBC_PRINTF; } 위와 같은 방법으로 호출을 전달하는 것이 반드시 필요한 것은 아닙니다 (다른 방법으로 호출을 기록하거나 vfprintf를 사용할 수 있기 때문에). 작업중 인 코드베이스는 래퍼가 실제 작업을 수행해야하며 vfprintf와 …
189 c  variadic 

25
2의 다음 거듭 제곱으로 반올림
가장 가까운 다음 2의 거듭 제곱을 반환하는 함수를 작성하고 싶습니다. 예를 들어 내 입력이 789 인 경우 출력은 1024 여야합니다. 루프를 사용하지 않고 비트 연산자 만 사용하여이를 달성 할 수있는 방법이 있습니까?

13
C는 그렇게 어렵지 않습니다 : void (* (* f []) ()) ()
방금 오늘 사진을 보았고 설명을 부탁드립니다. 여기 그림이 있습니다 : 나는 이것이 혼란스럽고 그러한 코드가 실제로 실용적인지 궁금해했다. 나는 사진을 googled 하고이 reddit 항목 에서 다른 사진을 발견 했으며 여기에 그 사진이 있습니다. 그래서이 "나 선식으로 읽는"것은 무엇인가? 이것이 C 컴파일러가 구문 분석하는 방법입니까? 이 이상한 코드에 대한 간단한 설명이 …



3
fork () 분기가 예상보다 많습니까?
다음 코드를 고려하십시오. #include <stdio.h> #include <sys/types.h> #include <unistd.h> int main(void) { int i; for(i = 0; i < 2; i++) { fork(); printf("."); } return 0; } 이 프로그램은 8 개의 점을 출력합니다. 어떻게 가능할까요? 대신 6 개의 점이 없어야합니까?
186 c++  c  fork 


1
GCC와 g ++는 어떻게 부트 스트랩됩니까?
이것은 잠시 동안 나를 괴롭 혔습니다. GCC와 g ++는 어떻게 스스로 컴파일합니까? 모든 개정판이 이전에 작성된 개정판으로 컴파일된다고 생각합니다. 이것이 사실입니까? 그렇다면 그것이 가장 오래된 g ++ 및 GCC 버전이 어셈블리로 작성되었음을 의미합니까?

14
인라인 기능 사용시기와 사용하지 않을시기
인라인은 컴파일러에 대한 힌트 또는 요청이며 함수 호출 오버 헤드를 피하는 데 사용됩니다. 따라서 함수가 인라인 후보인지 여부를 어떤 기준으로 결정할 수 있습니까? 어떤 경우에는 인라인을 피해야합니까?
185 c++  c  inline 

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