«c» 태그된 질문

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



8
GDB가 줄 사이를 예측할 수없이 점프하고 변수를 "<value optimize out>"으로 출력하는 이유는 무엇입니까?
누구든지 gdb의이 동작을 설명 할 수 있습니까? 900 memset(&amp;new_ckpt_info,'\0',sizeof(CKPT_INFO)); (gdb) **903 prev_offset = cp_node-&gt;offset;** (gdb) **905 m_CPND_CKPTINFO_READ(ckpt_info,(char *)cb-&gt;shm_addr.ckpt_addr+sizeof(CKPT_** HDR),i_offset); (gdb) **903 prev_offset = cp_node-&gt;offset;** (gdb) **905 m_CPND_CKPTINFO_READ(ckpt_info,(char *)cb-&gt;shm_addr.ckpt_addr+sizeof(CKPT_ HDR),i_offset);** (gdb) **908 bitmap_offset = client_hdl/32;** (gdb) **910 bitmap_value = cpnd_client_bitmap_set(client_hdl%32);** (gdb) **908 bitmap_offset = client_hdl/32;** (gdb) **910 bitmap_value = cpnd_client_bitmap_set(client_hdl%32);** (gdb) …

4
포토샵은 두 이미지를 어떻게 혼합합니까? [닫은]
닫은. 이 질문은 Stack Overflow 지침을 충족하지 않습니다 . 현재 답변을 받고 있지 않습니다. 이 질문을 개선하고 싶으십니까? Stack Overflow의 주제에 맞게 질문을 업데이트하세요 . 작년에 문을 닫았 습니다 . 이 질문 개선 내 응용 프로그램에서 동일한 효과를 재현 할 수 있도록 Photoshop에서 두 이미지를 혼합하는 방법을 설명해 주시겠습니까?

12
C의`free`가 해제 할 바이트 수를 사용하지 않는 이유는 무엇입니까?
그냥 확실하게합니다 : 알아요 않습니다 malloc및 free일반적으로 OS에서 메모리 청크를 할당하고 응용 프로그램에 메모리의 작은 제비를 소포 자체 관리를 수행하고 할당 된 바이트의 수를 추적 C 라이브러리에서 구현된다 . 이 질문은 어떻게 free does free to free 가 아닙니다 . 오히려 free애초에 이런 식으로 만들어진 이유를 알고 싶습니다 . 저수준 …

7
C에서 C ++ 함수를 호출하는 방법은 무엇입니까?
나는이 사실을 알고. C ++에서 C 함수 호출 : 내 응용 프로그램이 C ++이고 C로 작성된 라이브러리에서 함수를 호출해야했다면 다음을 사용했을 것입니다. //main.cpp extern "C" void C_library_function(int x, int y);//prototype C_library_function(2,4);// directly using it. 이것은 이름을 엉망으로 만들지 않을 것이며 C_library_function링커는 입력 * .lib 파일에서 동일한 이름을 찾고 문제가 해결됩니다. …
84 c++  c  visual-c++  extern-c 

10
초 고성능 C / C ++ 해시 맵 (테이블, 사전) [닫기]
닫은. 이 질문은 Stack Overflow 지침을 충족하지 않습니다 . 현재 답변을 받고 있지 않습니다. 이 질문을 개선하고 싶으십니까? Stack Overflow의 주제에 맞게 질문을 업데이트하세요 . 휴일 오년 전에 . 이 질문 개선 고성능 해시 맵 데이터 구조의 값을 구성하기 위해 기본 키 (int, 어쩌면 long)를 매핑해야합니다. 내 프로그램에는 이러한 맵이 …


12
C에서 입력 버퍼를 지우는 방법은 무엇입니까?
다음 프로그램이 있습니다. int main(int argc, char *argv[]) { char ch1, ch2; printf("Input the first character:"); // Line 1 scanf("%c", &amp;ch1); printf("Input the second character:"); // Line 2 ch2 = getchar(); printf("ch1=%c, ASCII code = %d\n", ch1, ch1); printf("ch2=%c, ASCII code = %d\n", ch2, ch2); system("PAUSE"); return 0; } 위 …
84 c  buffer 

2
이중 스트링 화 트릭은 정확히 어떻게 작동합니까?
적어도 일부 C 전처리기를 사용하면 하나의 함수와 유사한 매크로를 통해이를 문자열 화하는 다른 매크로로 전달하여 매크로의 이름이 아닌 값을 문자열화할 수 있습니다. #define STR1(x) #x #define STR2(x) STR1(x) #define THE_ANSWER 42 #define THE_ANSWER_STR STR2(THE_ANSWER) /* "42" */ 여기에 사용 사례의 예가 있습니다 . 이것은 적어도 GCC와 Clang (둘 다 -std=c99)에서 …

12
Git 버전 해시를 자동으로 인쇄하도록 C 코드를 얻으려면 어떻게해야합니까?
Git 버전 해시에 액세스 할 수있는 C 코드를 작성하는 쉬운 방법이 있습니까? 실험실 환경에서 과학 데이터를 수집하기 위해 C로 소프트웨어를 작성했습니다. 내 코드는 수집 한 데이터를 나중에 분석하기 위해 .yaml 파일에 기록합니다. 내 실험은 매일 바뀌고 종종 코드를 수정해야합니다. 개정을 추적하기 위해 git 저장소를 사용합니다. 내 .yaml 데이터 파일에 주석으로 …

9
C에서 문자열 리터럴의 "수명"
다음 함수에서 반환 된 포인터에 액세스 할 수 없습니까? char *foo(int rc) { switch (rc) { case 1: return("one"); case 2: return("two"); default: return("whatever"); } } 따라서 C / C ++에서 지역 변수의 수명은 실제로 함수 내에서만 가능합니다. 즉, char* foo(int)종료 후 반환되는 포인터는 더 이상 아무것도 의미하지 않습니다. 지역 …

5
소켓 프로그래밍을위한 INADDR_ANY 이해
일부 소켓을 프로그래밍하려고하므로 서버 측에서 htonl(INADDR_ANY). 내가 이해하는 한,이 함수는 임의의 IP를 생성하는 것 같습니다 (제가 맞습니까?). 사실, 내 소켓을 localhost. 하지만 내가 이것을 실행하면 printf("%d",htonl(INADDR_ANY)); 반환 값으로 0을 얻습니다. 누군가 설명을 할 수 있습니까?
84 c  sockets 

5
파이프 파손 오류의 원인은 무엇입니까?
피어 측의 소켓이 닫히면 깨진 파이프 오류가 발생한다는 것을 알고 있습니다. 그러나 내 테스트에서 피어 측이 닫힐 때이 측에서 즉각적인 '보내기'호출이 항상 파이프 오류로 이어지지는 않는다는 점에 주목했습니다. 예 : 피어 측에서 소켓을 닫은 후 (close를 호출하여 깨끗한 닫고 피어를 죽여서 비정상적인 닫는 것을 시도했습니다) 40 바이트를 보내려고하면 끊어진 파이프가 …
84 c  broken-pipe 

4
표면과 질감의 차이 (SDL / 일반)
누구든지 질감과 표면의 차이점을 간단한 말로 설명해 줄 수 있습니까? 나는 그것이 SDL2as SDL_Surface및 에서 사용되는 것을 보았다 SDL_Texture. SDL_Texture생성은부터 SDL_Surface차례로에서 화상 / 비트 맵으로부터 생성된다. 둘 다 픽셀 모음입니다. 그러나 나는 그들 사이의 주요 차이점을 보지 못합니다 (GPU로 무언가를해야합니까?) 나는 그것을 구글로 시도했지만 내가 찾은 모든 설명은 컴퓨터 그래픽에 …
84 c  graphics  sdl  sdl-2 

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