nginx 배열 사용 방법

9452 단어 nginx
여러 문자열 로 구 성 된 배열
#define STR_NUM 3
#define STR_MAX_LEN 64
int main()
{
    char strs[STR_NUM][STR_MAX_LEN] = { "ok", "xxx", "yyy" };
    return 0;
}

위의 코드 에서 보 듯 이 비교적 징 그 러 운 부분 이 두 개 있 습 니 다.
  • 모든 문자열 의 최대 길 이 를 설정 해 야 합 니 다. 실제로 대부분의 길 이 를 알 필요 가 없습니다.
  • 최대 문자열 개 수 를 설정 해 야 합 니 다.

  • demo
    #include 
    
    char* g_apcInfos[] = 
    {
        "ok",
        "xxx",
        "yyy",
        NULL
    };
    
    int main()
    {
        unsigned int i = 0;
        for (i = 0; g_apcInfos[i]; ++i)
        {
            printf("%s
    "
    , g_apcInfos[i]); } int strs_num = i; int strs_num2 = sizeof(g_apcInfos) / sizeof(char*) - 1; system("pause"); return 0; }

    코드 에서 보 듯 이 기 교 는 다음 과 같다.
  • 배열 의 마지막 은 반드시 NULL 입 니 다. NULL 을 통 해 마지막 인지 아 닌 지 를 판단 하기 때 문 입 니 다.
  • 옮 겨 다 닐 때 for 순환 조건 에 값 을 넣 으 면 됩 니 다. 예 를 들 어 코드 에 있 는 gapcInfos[i];
  • 문자열 의 개 수 는 순환 후의 i 값 입 니 다.
  • 물론 str 를 통 해서 도 가능 합 니 다.num2 방식 으로 문자열 개 수 를 계산 합 니 다.

  • 마지막 으로 nginx 의 유사 한 용법 (간소화) 을 보 여 줍 니 다.
    
    #include 
    #include 
    
    
    
    extern ngx_module_t  ngx_core_module;
    extern ngx_module_t  ngx_errlog_module;
    extern ngx_module_t  ngx_conf_module;
    extern ngx_module_t  ngx_openssl_module;
    extern ngx_module_t  ngx_regex_module;
    
    ngx_module_t *ngx_modules[] = {
        &ngx_core_module,
        &ngx_errlog_module,
        &ngx_conf_module,
        &ngx_openssl_module,
        &ngx_regex_module,
        NULL //          NULL
    };
    
    char *ngx_module_names[] = {
        "ngx_core_module",
        "ngx_errlog_module",
        "ngx_conf_module",
        "ngx_openssl_module",
        "ngx_regex_module",
        NULL     //          NULL
    };
    
    ngx_int_t ngx_preinit_modules(void)
    {
        ngx_uint_t  i;
        for (i = 0; /*     NULL     */ngx_modules[i]; i++) 
        {
            ngx_modules[i]->index = i;
            ngx_modules[i]->name = ngx_module_names[i];
        }
    
        /*        */
        ngx_modules_n = i;
    
        return NGX_OK;
    }
    
    
    
    

    좋은 웹페이지 즐겨찾기