c 56

음의 부동 소수점 값을 부호 없는 int로 변환할 때의 동작은 무엇입니까?

음의 부동 소수점 값을 부호 없는 int로 변환할 때의 동작은 무엇입니까? 이 질문에는 이미 다음과 같은 답변이 있습니다. 서명되지 않은 int에 대해 음의 이중으로 주조하는 동작이 C 표준에 정의되어 있습니까?ARM 대 x86의 다른 동작 (3개 답변) 닫힘3년 전에. 음의 부동 소수점 값을 부호 없는 적분형 값으로 변환하면 어떻게 됩니까?표준 견적을 주시면 감사하겠습니다.제가 직면한 문제는 부동 소수점 유형의 객체를 포함하는 변형 클래스에서 부호 없는 적분 유형의 값으로 변환하는 것입니다. 예: unsigned i = -.1; 음의 값이 -1.0 이하인 경우 적분 부분을 부호 없는 숫자로 나타낼 수 없으므로 정의되지 않은 동작을 호출합니다.그렇지 않으면 (-0.1의 경우처럼) 정수형으로 나타낼 수 있..

programing 2023.10.04

서명되지 않은 int에 대해 음의 이중으로 주조하는 동작이 C 표준에 정의되어 있습니까?ARM 대 x86의 다른 동작

서명되지 않은 int에 대해 음의 이중으로 주조하는 동작이 C 표준에 정의되어 있습니까?ARM 대 x86의 다른 동작 다른 결과를 얻는 것처럼 보이는 다른 플랫폼에서 실행되는 코드가 있습니다.저는 적절한 설명을 찾고 있습니다. 캐스팅을 기대했습니다.unsigned같은 일을 하다float아니면double에 관해서는int1. Windows: double dbl = -123.45; int d_cast = (unsigned int)dbl; // d_cast == -123 WinCE(암): double dbl = -123.45; int d_cast = (unsigned int)dbl; // d_cast == 0 편집: 올바른 방향을 제시해 주셔서 감사합니다. 해결책을 보다 double dbl = -123.45; ..

programing 2023.10.04

C가 프로그램을 컴파일하는 것과 실행하는 것에 차이가 있습니까?

C가 프로그램을 컴파일하는 것과 실행하는 것에 차이가 있습니까? 되지 않은 될 때 : C 하고의 시작 ()main), 컴파일 시 구현이 이를 거부할 경우 적합합니까?프로그램을 컴파일/번역하는 것과 실행하는 것 사이에 C의 차이가 있습니까? C의 통역사가 있는 것으로 알고 있습니다.이 차이에 대해서 C 표준으로 어떻게 처리합니까? 예제(초기화되지 않은 로컬 읽기) int main() { int i; return i; } 시 전이라도 (이라도) 이라도)main라고 함), 프로그램은 재미있는 것을 할 수 있습니다.하지만 우리가 그것을 실행해보지도 않았는데 재미있는 일이 일어날 수 있을까요?컴파일러 자체에 버퍼 오버플로가 발생할 수 있습니까?C11 초안에서: 3.4.3 미정의 행위 휴대가 불가능하거나 잘못된 데..

programing 2023.09.24

gdb를 사용하여 다음 "지시"로 이동

gdb를 사용하여 다음 "지시"로 이동 카나리아 값 설정 및 확인 메커니즘을 파악하려고 합니다. # #메인(void){printf("Hi!\n")를 반환합니다.} 메인을 분해할 때, 저는 (gdb) 파렴치한0x080483f4 : lea 0x4(%esp), %ecx0x080483f8 : 및 $0xfffffff0, %esp0x080483fb : 푸슬 -0x4 (%ecx)0x080483fe : push %ebp0x080483off : 이동 %esp, %esp0x08048401 : push %ecx0x08048402 : $0x14 이하, %esp0x08048405 : 이동 %gs : 0x14, %eax0x0804840b : %eax 이동, -0x8(%ebp)0x0804840e : x 또는 %eax, %eax0x..

programing 2023.09.24

C: C의 휘발성 배열

C: C의 휘발성 배열 volatile 키워드는 컴파일러가 변수에 대해 특정 최적화를 수행하는 것을 방지하기 위해 C에서 사용됩니다. 예를 들어, volatile int my_int = 0; 정수를 만듭니다.일부 상황에서는 다음과 같은 최적화를 방지할 수 있습니다. while(my_int == 0); // Loop until my_int != 0 최적화 대상: while(1); // Loop infinity. 이는 인터럽트 함수 호출에 의해 변수가 수정될 수 있는 상황과 같이 임베디드 시스템에서 자주 발생하는 상황을 포함한 상황에 유용합니다.이 기술이 유용한 다른 예는 많이 있습니다.my_int플래그는 이러한 함수에 의해 수정된 플래그일 수 있습니다.(이것은 장난감 모형일 뿐입니다.) 그러나 함수에 의해..

programing 2023.09.24

C의 텍스트 파일에서 int 값 읽기

C의 텍스트 파일에서 int 값 읽기 다음 세 줄이 들어 있는 텍스트 파일이 있습니다. 12 5 6 4 2 7 9 나는 사용할 수 있습니다.fscanf함수는 처음 3개의 값을 읽고 3개의 변수에 저장합니다.하지만 나머지는 읽을 수가 없습니다.사용해 보았습니다.fseek기능은 있지만 바이너리 파일에서만 작동합니다. 모든 값을 정수 변수로 저장할 수 있도록 도와주세요.를 이용한 간단한 해결fscanf: void read_ints (const char* file_name) { FILE* file = fopen (file_name, "r"); int i = 0; fscanf (file, "%d", &i); while (!feof (file)) { printf ("%d ", i); fscanf (file, "%d..

programing 2023.09.24

각각의 고유한 숫자로 9자리 숫자를 생성하려고 합니다.

각각의 고유한 숫자로 9자리 숫자를 생성하려고 합니다. 모두 고유한 숫자를 가진 9자리 숫자를 구하려고 합니다.저의 첫 번째 접근 방식은 너무 복잡해 보이고 쓰기에 지루할 것 같습니다. #include #include #include int main() { int indx; int num; int d1, d2, d3, d4, d5, d6, d7, d8, d9; for(indx = 123456789; indx 0) { const char c = buffer[i + d]; memmove(buffer + i + 1, buffer + i, d); buffer[i] = c; } } return 0; } digits 더 대로, d0 1 && n > 0) { const size_t i = seed % n; seed ..

programing 2023.09.24

헤더 전용 프로젝트를 생성하도록 CMake를 설정하려면 어떻게 해야 합니까?

헤더 전용 프로젝트를 생성하도록 CMake를 설정하려면 어떻게 해야 합니까? 헤더 전용 C++(또는 C) 라이브러리 프로젝트를 설정하고 싶은데 방법을 찾을 수 없습니다. 몇 번의 검색 끝에 다음을 사용하여 일반 라이브러리를 설정할 수 없음을 알게 되었습니다.add_library컴파일 가능한 소스 파일이 필요하기 때문입니다.이 방법은 다음과 같은 방법을 사용하는 것일 것입니다.add_custom_target대신 다음과 같은 방식으로: # Get all headers (using search instead of explicit filenames for the example) file( GLOB_RECURSE XSD_HEADERS *.hxx ) add_custom_target( libsxsd SOURCES $..

programing 2023.09.24

ANSI-C에서 정적이란 무엇을 의미합니까?

ANSI-C에서 정적이란 무엇을 의미합니까? 이 질문에는 이미 다음과 같은 답변이 있습니다. 닫힘12년 전에. 중복 가능: C 프로그램에서 "정적"이란 무엇을 의미합니까? 무엇을.static키워드 평균은 C? ANSI-C를 사용하고 있습니다.몇 가지 코드 예시를 봤는데, 그들은 다음 코드를 사용합니다.static키워드를 변수 앞과 함수 앞에 입력합니다.변수와 함께 사용하는 경우의 목적은 무엇입니까?그리고 기능과 함께 사용하는 경우의 목적은 무엇입니까?간단한 대답처럼, 두 가지 용도가 있습니다.static변수를 정의할 때 키워드: 1- 파일 범위에 정의된 변수:static키워드, 즉 정의된 외부 기능은 해당 파일 내에서만 볼 수 있습니다.다른 파일에서 액세스를 시도하면 링크 시 확인되지 않은 기호가 표시됩..

programing 2023.09.24