반응형

C 31

Windows 응용 프로그램에서 보이는 디스플레이로 stdout을 리디렉션하려면 어떻게 해야 합니까?

Windows 응용 프로그램에서 보이는 디스플레이로 stdout을 리디렉션하려면 어떻게 해야 합니까? "좋은 일"을 하는 타사 라이브러리에 액세스할 수 있습니다.stdout에 상태 및 진행률 메시지를 발행합니다.콘솔 응용 프로그램에서 이러한 메시지를 볼 수 있습니다.Windows 애플리케이션에서는 비트 버킷으로 이동합니다. stdout 및 stderr를 텍스트 컨트롤 또는 다른 보이는 위치로 리디렉션하는 상당히 간단한 방법이 있습니까?이상적으로는 타사 코드의 재컴파일이 필요하지 않습니다.그것은 낮은 수준에서 증기를 차단할 것입니다.헤더를 #포함하고 초기화 함수를 호출하여 라이브러리를 링크하는 솔루션을 원합니다. #include "redirectStdFiles.h" void function(args...)..

programing 2023.08.26

C의 인수 목록에서 ...은 무엇을 의미합니까?

C의 인수 목록에서 ...은 무엇을 의미합니까? 저는 다음 함수 서명을 우연히 발견했고 이것이 ( 생략 부호, 또는 )인지) 궁금했습니다."..." 일종의 다형성인가요? #include int fcntl(int fd, int cmd, ... ); 잘 부탁드립니다.변수 인수 목록입니다.그것은 변수 함수입니다.자세한 내용은 stdarg.h를 참조하십시오. 그...는 다른 주석자가 이미 언급한 것처럼 이 함수에 임의의 수의 인수를 전달할 수 있음을 의미합니다.선택적 인수가 입력되지 않았기 때문에 컴파일러는 유형을 확인할 수 없으며 모든 유형의 인수를 기술적으로 전달할 수 있습니다. 그렇다면 이것을 사용하여 어떤 종류의 다형성 함수를 구현할 수 있다는 것을 의미합니까? (즉, 인수의 유형에 따라 어떤 연산을 수..

programing 2023.08.16

싸이톤에서 리스트/딕트를 하는 관용적인 방법은?

싸이톤에서 리스트/딕트를 하는 관용적인 방법은? 내 문제:STL 맵과 벡터를 사용하여 원시 C++로 대용량 데이터 세트를 처리하는 것이 Cython을 사용하는 것보다 훨씬 빠르고 메모리 설치 공간도 적다는 것을 알게 되었습니다. 저는 이 속도 페널티의 일부가 파이썬 목록과 딕트를 사용하기 때문이며, 사이톤에서 방해를 덜 받는 데이터 구조를 사용하기 위한 몇 가지 속임수가 있을 수 있다고 생각합니다.예를 들어, 이 페이지(http://wiki.cython.org/tutorials/numpy) 는 ND 배열의 크기와 유형을 미리 정의하여 Cython에서 numpy 배열을 매우 빠르게 만드는 방법을 보여줍니다. 질문:.목록/딕트와 유사한 작업을 수행할 수 있는 방법이 있습니까? 예를 들어, 목록/딕트에 대략 ..

programing 2023.08.06

목표-C 구조의 기본값 및 테스트 방법

목표-C 구조의 기본값 및 테스트 방법 저는 아직 속성이 설정되지 않았는지 테스트하려고 합니다.저는 제가 가지고 있는 물건에 대해 알고 있습니다. CGRect ppGoalFrame; LocalPlaySetup *localPlaySetup; 그리고 나는 테스트할 수 있습니다. if (localPlaySetup == nil) 하지만 == nil 또는 == NULL로 CGRect를 테스트하려고 하면 if (ppGoalFrame == nil) 알겠습니다 invalid operands to binary == (have 'CGRect' and 'void *') 그것도 그렇습니다.CGRect"null", null, nil...준비되기 전에?분명히 나는 CGrect를 무효 포인터와 비교할 수 없습니다(사용할 수 없습니..

programing 2023.08.01

방법을 이해합니다.내부 C 함수는 R에서 처리됩니다.

방법을 이해합니다.내부 C 함수는 R에서 처리됩니다. R이 어떻게 실행되는지 설명할 수 있는 사람이 있는지 궁금합니다.C콘솔 프롬프트에 입력된 R 명령에서 호출합니다.나는 특히 혼란스럽습니다.Ra) 함수 인수 및 b) 함수 호출 자체에 대한 처리. 예를 들어, 이 경우에set.seed()어떻게 작동하는지 궁금하면 프롬프트에 이름을 입력하고 출처를 확인합니다(자세한 내용은 여기를 참조하십시오). 결국에는 다음이 있습니다..Internal(set.seed(seed, i.knd, normal.kind)그래서 의무적으로 관련 기능 이름을 찾습니다..Internals의 일부./src/names.c라는 것을 알게 됩니다.do_setseed에 있습니다.RNG.c그래서 나는... SEXP attribute_hidden..

programing 2023.07.22

C 프로그램에서 C++로 만든 공유 라이브러리를 사용할 수 있습니까?

C 프로그램에서 C++로 만든 공유 라이브러리를 사용할 수 있습니까? 저는 C를 이용하여 프로그램을 만들고 있습니다.하지만 저는 C++ 전용 API가 있는 라이브러리를 많이 사용해야 합니다.그렇다면 C++에서 공유 객체를 생성한 다음 C를 사용하여 해당 기능에 액세스할 수 있습니까? 제가 전달하고 반환할 데이터는 C 호환 데이터 유형뿐입니다. 여기서는 cpp로 변환하거나 마이그레이션하는 것이 옵션이 아닙니다. 이러한 코드를 인터페이스할 수 없는 경우 C++ 코드에서 C 코드로 정보를 가져오려면 어떻게 해야 합니까?C에서 C++ 함수를 호출하려고 했는데 링크 중에 오류가 발생합니다.그럼 C에서 C++ 함수를 호출할 때 C 컴파일러와 호환되는 코드만 사용해야 합니까? C++ 헤더 cppfile.hpp #if..

programing 2023.07.22

왜 공포증을 사용할 수 없습니까?

왜 공포증을 사용할 수 없습니까? 컴파일러 C 8에서 Windows의 Microsoft 버전(Visual C++ 8)을 .strerror()안전하지 않습니다. 마이크로소프트의 모든 안전 끈에 있는 성가신 요소는 제쳐두고, 저는 실제로 몇몇 사용되지 않는 기능들이 위험하다는 것을 알 수 있습니다.하지만 뭐가 문제인지 이해할 수 없습니다.strerror()코드가필니다합요다니▁(▁a코)를 합니다.int를 선택하고 문자열을 합니다. 알 수 없는 빈 을 반환합니다을 클릭하고 해당 문자열을 반환합니다. 또는 해당 코드를 알 수 없는 경우 빈 문자열을 반환합니다. 어디에 위험이 있습니까? C에 좋은 대안이 있습니까? C++에 좋은 대안이 있습니까? [편집] 몇 가지 좋은 답변을 얻었고, 이제 일부 구현은 공통 공유 ..

programing 2023.07.22

휴대용 코드는 long long을 사용해야 합니까, int64_t를 사용해야 합니까?

휴대용 코드는 long long을 사용해야 합니까, int64_t를 사용해야 합니까? 저는 C와 C++로 작성된 오픈 소스 코드베이스를 가지고 있습니다.저는 최소 64비트 너비가 보장되는 정수형을 찾고 있습니다. 이 정수형은 일반 사용자의 추가 작업 없이 오픈 소스 C 및 C++ 컴파일러로 대부분의 OS X(Intel, 64비트) 및 Linux 박스에서 안정적으로 컴파일할 수 있습니다.Windows 및 32비트 클라이언트 지원은 현재 중요하지 않습니다. X에서 는 C모드를 OS X의 것 ).long long 이것지않지만지지다원니원합,하은도▁cl다니▁it▁).,를 지원하지만.long long특정 버전 이후에 C99 모드가 활성화된 경우. 사용할 일반적인 제안입니까?int64_t신에를 long long휴대성..

programing 2023.07.07

디버깅 없이 잘못된 명령 오류를 발생시킨 어셈블리 명령 찾기

디버깅 없이 잘못된 명령 오류를 발생시킨 어셈블리 명령 찾기 어셈블리에서 작성한 프로그램을 실행하는 동안, 저는Illegal instruction오류. 디버깅 없이 어떤 명령어가 오류를 유발하는지 알 수 있는 방법이 있습니까? 즉, 제가 실행 중인 컴퓨터에 디버거나 개발 시스템이 없기 때문입니다.즉, 한 시스템에서 컴파일하고 다른 시스템에서 실행합니다.컴파일 중인 컴퓨터에서 프로그램을 테스트할 수 없습니다. SSE4.2를 지원하지 않기 때문입니다.그럼에도 불구하고 내가 프로그램을 실행하는 기계는 SSE4.2 명령을 지원합니다. gcc를 명령을 인 것 .-msse4.2깃발. 아니면 그게 이유가 아니라고 생각하세요?YASM에게 SSE4.2 명령을 인식하도록 지시하는 방법을 알고 있습니까? SIGILL 신호를..

programing 2023.07.02

C에서 #pragma는 한때 무엇을 의미합니까?

C에서 #pragma는 한때 무엇을 의미합니까? 이 질문에는 이미 다음과 같은 답이 있습니다. 마감됨12년 전에. 중복 가능성: #hymma - 이해를 돕기 나는 그것을 보았습니다.pragma여러 번, 하지만 항상 혼란스러워요, 그게 무엇을 하는지 아는 사람?창문만 있나요?다음 프리프로세서 코드를 대체하는 데 사용됩니다. #ifndef _MYHEADER_H_ #define _MYHEADER_H_ ... #endif 레거시 컴파일러를 지원하기 위해 두 가지를 모두 추가하는 것이 좋은 관례입니다(이는 드문 일이지만). #pragma once #ifndef _MYHEADER_H_ #define _MYHEADER_H_ ... #endif 그래서 만약에#pragma once실패합니다. 이전 방법은 계속 작동합니다..

programing 2023.06.27
반응형