몇 가지 포인터를 보유하고 가능한 경우 정적으로 초기화하려는 C 코드에는 상당히 간단한 const 구조체가 있습니다. 내가 할 수 있고, 그렇다면 어떻게 할 수 있습니까? 포인터가 전역 개체를 가리키는 경우함수를 사용하지 않고 const struct를 초기화 할 수 있습니까?
12
A
답변
15
당신은 할 수 있습니다
는// In global scope
int x, y;
const struct {int *px, *py; } s = {&x, &y};
5
const struct mytype foo = {&var1, &var2};
1
const를 구조체는 만 정적 초기화 할 수 있습니다.
0
그러나이 다음과 같은 몇 가지 struct
경우 :
struct Foo
{
const int a;
int b;
};
을 우리가 동적으로 malloc
를 사용하여 struct
에 대한 포인터를 만들려면, 그래서 우리는 트릭을 재생할 수 있습니다 :
struct Foo foo = { 10, 20 };
char *ptr = (char*)malloc(sizeof(struct Foo));
memcpy(ptr, &foo, sizeof(foo));
struct Foo *pfoo = (struct Foo*)ptr;
이있다 어떤 함수가 포인터를 반환해야 할 때 매우 유용합니다. struct Foo
관련 문제
- 1. 기본 생성자를 사용하지 않고 벡터 초기화
- 2. 중첩 된 함수를 사용하지 않고 ODE를 어떻게 해결할 수 있습니까?
- 3. const NxRay를 사용하지 않고 PhysX 라이브러리로 레이 캐스트하는 방법이 있습니까?
- 4. const 레퍼런스에서 non-const 오브젝트를 초기화 할 때 복사 금지.
- 5. 변수를 사용하지 않고 튜플을 언팩 할 수 있습니까?
- 6. 함수를 사용하지 않고 변수를 하나씩 늘림
- 7. 클래스에서 선언 할 때 컬렉션 속성을 초기화 할 수 있습니까
- 8. 초기화 메서드에서 const 주위에 점점
- 9. const 참조에 대한 리터럴 초기화
- 10. SQL 함수를 사용하지 않고 PHP에서 문자열을 varbinary로 변환 할 수 있습니까
- 11. 창을 사용하지 않고 클로저 전역에서 함수를 선언하십시오.
- 12. Inbuilt 함수를 사용하지 않고 .NET에서 난수 생성
- 13. WSDD를 사용하지 않고 Axis로 SOAP 서버를 배포 할 수 있습니까?
- 14. 관계를 사용하지 않고 doctrine ORM의 테이블을 조인 할 수 있습니까?
- 15. eval을 사용하지 않고 json 객체를 반복 할 수 있습니까?
- 16. regexes는 그룹을 사용하지 않고 부분 문자열을 캡처 할 수 있습니까?
- 17. Perl 형식을 사용하지 않고 어떻게 열을 포맷 할 수 있습니까?
- 18. AS3에서 XML을 사용하지 않고 폴더의 모든 파일을로드 할 수 있습니까?
- 19. KeyContainerName을 사용하지 않고 XML 문서에 서명 할 수 있습니까?
- 20. flex에서 HierarchicalData를 사용하지 않고 AdvancedDataGrid의 행을 확장 할 수 있습니까?
- 21. NSTimer를 사용하지 않고 10 초마다 방법을 트리거 할 수 있습니까?
- 22. jQuery를 사용하지 않고 입력별로 어떻게 입력 할 수 있습니까?
- 23. CreateSQLQuery를 사용하지 않고 NHibernate에서이를 수행 할 수 있습니까?
- 24. abort()를 사용하지 않고 어떻게 assert() 할 수 있습니까?
- 25. 레일에서 self.attribute =를 사용하지 않고 어떻게 할당 할 수 있습니까?
- 26. UIImagePickerController를 사용하지 않고 비디오를 녹화 할 수 있습니까?
- 27. Activity 클래스를 사용하지 않고 연락처를 검색 할 수 있습니까?
- 28. ant-contrib을 사용하지 않고 ant에서 파일을 반복 할 수 있습니까?
- 29. android 3.0에서 조각을 사용하지 않고 탭을 표시 할 수 있습니까?
- 30. LiveCycle을 사용하지 않고 휴대용 RIA를 구축 할 수 있습니까?