C Programer  - 讨论区

标题:APR string 模块编程示例

2014年01月12日 星期日 00:05

APR的string模块的主要特色就是使用内存池进行内存管理,无需手工分配内存,使用非常方便。编程示例如下:

#include <stdio.h>
#include <apr.h>
#include <apr_pools.h>
#include <apr_errno.h>
#include <apr_strings.h>


void apr_err(const char *s, apr_status_t rv)
{
    char buf[120];
    fprintf(stderr, "%s: %s (%d)\n", s, 
         apr_strerror(rv, buf, sizeof buf), rv);
}

int main(int argc,char **argv) {
    apr_initialize();
    apr_pool_t *pool;
    apr_pool_create(&pool,NULL);
    apr_status_t st;

    apr_int64_t i;
    i=apr_atoi64("11411008953232344");
    printf("i  = %ld\n",i);
    char *si=apr_ltoa(pool,i);
    printf("si = %s\n",si);

    char *s=apr_pcalloc(pool,1024);
    strcpy(s,"ni hao are you !");
    apr_collapse_spaces(s,s);
    printf("s = %s\n",s);

    apr_cpystrn(s,"how are you today?",1024);
    printf("s = %s\n",s);
    apr_collapse_spaces(s,s);
    printf("s = %s\n",s);
    
    char *k=apr_psprintf(pool,"%d + %d = %d",100,200,100+200);
    printf("k : %s\n",k);

    char *j=apr_pstrdup(pool,"laoliu");
    printf("j = %s\n",j);

    apr_pool_destroy(pool);
    apr_terminate();
    return 0;
}

参考资料:

http://apr.apache.org/docs/apr/1.3/group__apr__strings.html

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2024

    京ICP备05028076号