저는 네트워킹 할당 작업을하고 있습니다. 우리는 주어진 프로토콜을 사용하여 원격 파일 액세스 서버를 생성해야합니다. 내 어려움은 open()에서 oflag 인수에 대한 비트를 계산하는 과정을 설명하는 정보가 부족하다는 데 있습니다.open()에서 oflag에 대한 비트 플래그/열거 플래그를 계산하는 방법은 무엇입니까?
클라이언트에서 파일을 열기 위해 메시지를 수신하고 플래그에서 oflag에 사용할 문자를 구문 분석하는 메시지에서 메시지를 봅니다. 즉 그것들은 :
- R - O_RDONLY
- W - O_WRONLY
- RW - O_RDWR
- A - O_APPEND
- C - O_CREAT
- T - O_TRUNC
- E - O_EXCL
Google과 비트 맵 연산, 열거 플래그, 비트 플래그, 비트 플래그 계산 등이 포함되어 있으며, oflag 비트를 생성하는 방법을 파악하는 데 유용한 정보를 찾을 수 없습니다. 어쩌면 나는 내가 무엇을 찾고 있으며 유용한 정보를 간과했는지 모른다.
사람 시겠어요 :
- 포인트 나 방향/내 구문 분석 문자 나
- 주어진 oflags에 넣어 내가한다고 비트/#을 계산하는 방법의 문서/예에 대한 링크를 제공 보여줘 플래그 그들은한다고 순서의 열거 유형은 도움을
감사 무리에 가서 내 문제 나 내가 뭘하려고에 명확하지 않은 경우 바로 알려 주시면합니다 최대한 빨리 정리할 것입니다.
예를 들어, RWC를 구문 분석하면 열려있을 수 있습니다 (예 : "file", O_RDWR | O_CREAT). 하지만 그 이후부터는 int oflag = (02 | 0100)과 같은 식으로 문자를 알고 나서 내 열기가 열린 것처럼 보일 것입니다 ("file", oflag)? 바이너리로 파싱하는 필자의 캐릭터에서 갈 필요가있다. – Chris