«c» 태그된 질문

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


4
왜 모두가 표준 C 유형보다 typedef합니까?
당신이 사용하려는 경우 Qt는을 , 당신은 포용해야한다 quint8, quint16등등합니다. 당신이 사용하려는 경우 입심을 , 당신은 환영에있다 guint8, guint16등등합니다. 에 리눅스 가 u32, s16등등합니다. uC / OS 는 SINT32등을 정의 UINT16합니다. 그리고 이러한 것들의 조합을 사용해야한다면 문제에 대비하는 것이 좋습니다. 에 있기 때문에 컴퓨터가 u32될 것이다 typedef이상 거라고 long및 quint32것 typedef이상 …
103 c++  c  stdint 

12
C 문자 리터럴이 문자 대신 정수인 이유는 무엇입니까?
C ++에서 sizeof('a') == sizeof(char) == 1. 이것은 'a'문자 리터럴이고 sizeof(char) == 1표준에 정의 된대로 직관적으로 이해 됩니다. 그러나 C에서는 sizeof('a') == sizeof(int). 즉, C 문자 리터럴은 실제로 정수인 것처럼 보입니다. 이유를 아는 사람이 있습니까? 이 C 특성에 대한 많은 언급을 찾을 수 있지만 왜 존재하는지에 대한 설명은 없습니다.
103 c++  c  char  sizeof 

7
C / C ++ 매크로의 쉼표
이와 같은 매크로가 있다고 가정 해 보겠습니다. #define FOO(type,name) type name 다음과 같이 사용할 수 있습니다. FOO(int, int_var); 그러나 항상 그렇게 간단하지는 않습니다. FOO(std::map<int, int>, map_var); // error: macro "FOO" passed 3 arguments, but takes just 2 물론 우리는 할 수 있습니다 : typedef std::map<int, int> map_int_int_t; FOO(map_int_int_t, map_var); // …
103 c++  c  macros  c-preprocessor 


8
부동 소수점 값의 정밀도를 유지하기위한 Printf 너비 지정자
문자열을 다시 스캔 할 때 원래 부동 소수점 값을 얻 printf도록 출력을 필요한 유효 자릿수 로 자동 형식화하는 부동 소수점 지정자에 적용 할 수 있는 너비 지정자가 있습니까? 예를 들어, 소수 자릿수 float의 정밀도로 a 를 인쇄한다고 가정 2합니다. float foobar = 0.9375; printf("%.2f", foobar); // prints out 0.94 출력을 …

3
int32, int, int32_t, int8 및 int8_t의 차이점
int32_t최근에 C 프로그램에서 데이터 유형 을 발견했습니다. 나는 그것이 32 비트를 저장하는 것을 알고 있지만,하지 int와 int32동일한 작업을 수행? 또한 char프로그램에서 사용하고 싶습니다 . int8_t대신 사용할 수 있습니까 ? 차이점은 무엇입니까? 요약하면 C에서 int32, int, int32_t, int8 및 int8_t의 차이점은 무엇입니까?
103 c  int  declaration 

7
C에서 16 진수 문자 인쇄
한 줄의 문자를 읽은 다음 해당 문자에 해당하는 16 진수를 인쇄하려고합니다. 예를 들어, "0xc0 0xc0 abc123"처음 두 문자가 c016 진수이고 나머지 문자가 abc123ASCII 인 문자열이 있는 경우 다음을 얻어야합니다. c0 c0 61 62 63 31 32 33 그러나 printf사용 %x하면 ffffffc0 ffffffc0 61 62 63 31 32 33 없이 원하는 …
103 c  hex  printf 

4
-D_XOPEN_SOURCE의 기능 / 의미는 무엇입니까?
최근에이 인수 없이는 gcc가 컴파일 할 수없는 코드를 발견했습니다. gcc man 페이지를 확인했지만이 특정 옵션을 찾지 못했습니다. 을 찾았 XOPEN_SOURCE지만 그 기능에 대한 설명이 거의 없었습니다. 누군가 자세히 설명해 주시겠습니까? 내가 알고 -D_XOPEN_SOURCE다른 값 등으로 설정할 수 있습니다 400, 600그 할 일을 일을하지만?
103 c  gcc 

7
CRC32 체크섬은 어떻게 계산됩니까?
어쩌면 나는 그것을 보지 못하고 있지만 CRC32는 불필요하게 복잡해 보이거나 웹에서 찾을 수있는 곳에서 충분히 설명하지 못하는 것 같습니다. 나는 그것이 (생성자) 다항식으로 나눈 메시지 값의 비 캐리 기반 산술 분할의 나머지라는 것을 이해하지만 실제 구현은 나를 피합니다. A Painless Guide To CRC Error Detection Algorithms를 읽었 으며 고통스럽지 않았다고 …
103 c  checksum  crc32 

2
void에서 &&는 무엇을 의미합니까 * p = && abc;
코드 조각을 발견했습니다 void *p = &&abc;. 여기서의 의미는 무엇입니까 &&? rvalue 참조에 대해 알고 있지만 &&이 컨텍스트에서 사용되는 것은 다릅니다. 무엇을 &&의미 void *p = &&abc;합니까?
102 c++  c  gcc  operators 

10
숫자 뒤의 "f"
f숫자 뒤에있는 것은 무엇을 의미합니까? 이것은 C 또는 Objective-C에서 온 것입니까? 이것을 상수에 추가하지 않는 데 차이가 있습니까? CGRect frame = CGRectMake(0.0f, 0.0f, 320.0f, 50.0f); 왜 내가 쓰지 않는지 설명해 주시겠습니까? CGRect frame = CGRectMake(0, 0, 320, 50);

7
프로그램을 느리게 실행
Linux에서 OS 매개 변수를 변경하여 C ++ 프로그램을 더 느리게 실행할 수있는 방법이 있습니까? 이런 식으로 특정 프로그램이 실제 속도가 느린 시스템에서 실행될 경우 어떤 일이 발생하는지 시뮬레이션하고 싶습니다. 즉, 더 빠른 머신은 특정 프로그램에 대해 더 느린 머신으로 동작해야합니다.
102 c++  c  linux  unix  ubuntu 

6
구조체 정의는 .h 또는 .c 파일에 있어야합니까?
struct헤더에서 s의 전체 정의 와 선언 만 보았습니다. 한 메서드가 다른 메서드에 비해 이점이 있습니까? 차이가 나는 경우 일반적으로 다음과 같은 구조체를 typedef합니다. .h typedef struct s s_t; 편집하다 명확하게 말하면 옵션은 헤더 파일의 선언과 클래스의 정의 또는 헤더 파일의 선언과 정의입니다. 둘 다 연결에 의한 경우에도 동일한 사용성을 가져야합니다. …
102 c  header  struct 

6
snprintf 및 Visual Studio 2010
불행히도 프로젝트에 VS 2010을 사용하는 데 어려움을 겪고 있으며 다음 코드가 여전히 비표준 호환 컴파일러를 사용하여 빌드되지 않는다는 것을 알았습니다. #include <stdio.h> #include <stdlib.h> int main (void) { char buffer[512]; snprintf(buffer, sizeof(buffer), "SomeString"); return 0; } (오류로 컴파일 실패 : C3861 : 'snprintf': 식별자를 찾을 수 없음) 나는 이것이 VS …

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