您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ string_join函数代码示例

51自学网 2021-06-03 08:30:22
  C++
这篇教程C++ string_join函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中string_join函数的典型用法代码示例。如果您正苦于以下问题:C++ string_join函数的具体用法?C++ string_join怎么用?C++ string_join使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了string_join函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: build_filenames

voidbuild_filenames(cmd_ln_t *config, char const *basename,                char **out_infile, char **out_outfile){    char const *di, *do_, *ei, *eo;    di = cmd_ln_str_r(config, "-di");    do_ = cmd_ln_str_r(config, "-do");    ei = cmd_ln_str_r(config, "-ei");    eo = cmd_ln_str_r(config, "-eo");    *out_infile = string_join(di ? di : "",                              di ? "/" : "",                              basename,                              ei ? "." : "",                              ei ? ei : "",                              NULL);    *out_outfile = string_join(do_ ? do_ : "",                               do_ ? "/" : "",                               basename,                               eo ? "." : "",                               eo ? eo : "",                              NULL);    /* Build output directory structure if possible/requested (it is     * by default). */    if (cmd_ln_boolean_r(config, "-build_outdirs")) {        char *dirname = ckd_salloc(*out_outfile);        path2dirname(*out_outfile, dirname);        build_directory(dirname);        ckd_free(dirname);    }}
开发者ID:kirpen,项目名称:pocketsphinx.js,代码行数:32,


示例2: NBLA_CHECK

void SigmoidCrossEntropy<T, Tl>::setup_impl(const Variables &inputs,                                            const Variables &outputs) {  NBLA_CHECK(inputs[0]->shape() == inputs[1]->shape(), error_code::value,             "Dimensions of inputs must match. "             "inputs[0]: %s != inputs[1]: %s.",             string_join(inputs[0]->shape(), string(", ")).c_str(),             string_join(inputs[1]->shape(), string(", ")).c_str());  outputs[0]->reshape(inputs[0]->shape(), true);}
开发者ID:zwsong,项目名称:nnabla,代码行数:10,


示例3: ps_default_search_args

voidps_default_search_args(cmd_ln_t *config){#ifdef MODELDIR    /* Set default acoustic and language models. */    const char *hmmdir = cmd_ln_str_r(config, "-hmm");    if (hmmdir == NULL && hmmdir_exists(MODELDIR "/en-us/en-us")) {        hmmdir = MODELDIR "/en-us/en-us";        cmd_ln_set_str_r(config, "-hmm", hmmdir);    }    const char *lmfile = cmd_ln_str_r(config, "-lm");    if (lmfile == NULL && !cmd_ln_str_r(config, "-fsg")        && !cmd_ln_str_r(config, "-jsgf")        && !cmd_ln_str_r(config, "-lmctl")        && !cmd_ln_str_r(config, "-kws")        && !cmd_ln_str_r(config, "-keyphrase")        && file_exists(MODELDIR "/en-us/en-us.lm.dmp")) {        lmfile = MODELDIR "/en-us/en-us.lm.dmp";        cmd_ln_set_str_r(config, "-lm", lmfile);    }    const char *dictfile = cmd_ln_str_r(config, "-dict");    if (dictfile == NULL && file_exists(MODELDIR "/en-us/cmudict-en-us.dict")) {        dictfile = MODELDIR "/en-us/cmudict-en-us.dict";        cmd_ln_set_str_r(config, "-dict", dictfile);    }    /* Expand acoustic and language model filenames relative to installation     * path. */    if (hmmdir && !path_is_absolute(hmmdir) && !hmmdir_exists(hmmdir)) {        char *tmphmm = string_join(MODELDIR "/hmm/", hmmdir, NULL);        if (hmmdir_exists(tmphmm)) {            cmd_ln_set_str_r(config, "-hmm", tmphmm);        } else {            E_ERROR("Failed to find mdef file inside the model folder "                    "specified with -hmm `%s'/n", hmmdir);        }        ckd_free(tmphmm);    }    if (lmfile && !path_is_absolute(lmfile) && !file_exists(lmfile)) {        char *tmplm = string_join(MODELDIR "/lm/", lmfile, NULL);        cmd_ln_set_str_r(config, "-lm", tmplm);        ckd_free(tmplm);    }    if (dictfile && !path_is_absolute(dictfile) && !file_exists(dictfile)) {        char *tmpdict = string_join(MODELDIR "/lm/", dictfile, NULL);        cmd_ln_set_str_r(config, "-dict", tmpdict);        ckd_free(tmpdict);    }#endif}
开发者ID:jhector,项目名称:sphinxfuzz,代码行数:53,


示例4: main

int main(){  /* Test the string_join function. */  char *s1 = "Hello ";  char *s2 = "World";  printf("%s/n", string_join(s1, s2));  printf("s1 len=%d/n", (int)strlen(s1));  printf("s2 len=%d/n", (int)strlen(s2));  printf("s3 len=%d/n", (int)strlen(string_join(s1, s2)));  return 0;}
开发者ID:imnotlistening,项目名称:rsh,代码行数:15,


示例5: write_nbest

static intwrite_nbest(ps_decoder_t *ps, char const *nbestdir, char const *uttid){    cmd_ln_t *config;    char *outfile;    FILE *fh;    ps_nbest_t *nbest;    int32 i, n, score;    const char* hyp;    config = ps_get_config(ps);    outfile = string_join(nbestdir, "/", uttid,                          cmd_ln_str_r(config, "-nbestext"), NULL);    n = cmd_ln_int32_r(config, "-nbest");    fh = fopen(outfile, "w");    if (fh == NULL) {        E_ERROR_SYSTEM("Failed to write a lattice to file %s/n", outfile);        return -1;    }    nbest = ps_nbest(ps, 0, -1, NULL, NULL);    for (i = 0; i < n && nbest && (nbest = ps_nbest_next(nbest)); i++) {        hyp = ps_nbest_hyp(nbest, &score);        fprintf(fh, "%s %d/n", hyp, score);            }    if (nbest)	ps_nbest_free(nbest);    fclose(fh);    return 0;}
开发者ID:joicemjoseph,项目名称:pocketsphinx.js,代码行数:30,


示例6: write_lattice

static intwrite_lattice(ps_decoder_t *ps, char const *latdir, char const *uttid){    ps_lattice_t *lat;    logmath_t *lmath;    cmd_ln_t *config;    char *outfile;    int32 beam;    if ((lat = ps_get_lattice(ps)) == NULL) {        E_ERROR("Failed to obtain word lattice for utterance %s/n", uttid);        return -1;    }    config = ps_get_config(ps);    outfile = string_join(latdir, "/", uttid,                          cmd_ln_str_r(config, "-outlatext"), NULL);    /* Prune lattice. */    lmath = ps_get_logmath(ps);    beam = logmath_log(lmath, cmd_ln_float64_r(config, "-outlatbeam"));    ps_lattice_posterior_prune(lat, beam);    if (0 == strcmp("htk", cmd_ln_str_r(config, "-outlatfmt"))) {        if (ps_lattice_write_htk(lat, outfile) < 0) {            E_ERROR("Failed to write lattice to %s/n", outfile);            return -1;        }    }    else {        if (ps_lattice_write(lat, outfile) < 0) {            E_ERROR("Failed to write lattice to %s/n", outfile);            return -1;        }    }    return 0;}
开发者ID:joicemjoseph,项目名称:pocketsphinx.js,代码行数:34,


示例7: NormalPath

String NormalPath(const String& file_){	String file(file_);	file.replace('//','/');	arr_1t<String> arr=string_split(file,"/");	arr_1t<String> tmp;	for(size_t i=0;i<arr.size();i++)	{		if(arr[i]=="")		{			if(i==0) tmp.push_back("");		}		else if(arr[i]!="..")		{			tmp.push_back(arr[i]);		}		else if(tmp.empty()||tmp.back()=="..")		{			tmp.push_back(arr[i]);		}		else		{			tmp.pop_back();		}	}	return string_join(tmp.begin(),tmp.end(),"/");}
开发者ID:xuanya4202,项目名称:ew_base,代码行数:30,


示例8: populate_entries

void populate_entries(struct s_gui_data *gui_data) {  GtkTreeModel *modelEntries;  GtkTreeIter iter;  gtk_list_store_clear(gui_data->listStoreEntries);  GList *item = g_list_first(gui_data->conf->entrylist);  while(item)  {    monconf_entry *entry = (monconf_entry *)item->data;    char *str_ignores = string_join(entry->ignore_files);    gtk_list_store_append(gui_data->listStoreEntries, &iter);    gtk_list_store_set(gui_data->listStoreEntries,&iter,           COL_ENTRY_PATH, entry->file_name,           COL_ENTRY_RECURSIVE, (gboolean)(entry->recursive),           COL_ENTRY_EVENT_CREATE, (gboolean)(entry->events & MON_CREATE),           COL_ENTRY_EVENT_MODIFY, (gboolean)(entry->events & MON_MODIFY),           COL_ENTRY_EVENT_DELETE, (gboolean)(entry->events & MON_DELETE),           COL_ENTRY_EVENT_ATTRIBS, (gboolean)(entry->events & MON_ATTRIB),           COL_ENTRY_EVENT_MOVED_FROM, (gboolean)(entry->events & MON_MOVED_FROM),           COL_ENTRY_EVENT_MOVED_TO, (gboolean)(entry->events & MON_MOVED_TO),           COL_ENTRY_IGNORE, str_ignores,                      -1          );    free(str_ignores);    item = item->next;  }}
开发者ID:hiddendog,项目名称:monarqui,代码行数:28,


示例9: string_join

std::string Parallel::name() const   {   std::vector<std::string> names;   for(auto&& hash : m_hashes)      names.push_back(hash->name());   return "Parallel(" + string_join(names, ',') + ")";   }
开发者ID:lanurmi,项目名称:botan,代码行数:9,


示例10: ps_add_file

static voidps_add_file(ps_decoder_t *ps, const char *arg,            const char *hmmdir, const char *file){    char *tmp = string_join(hmmdir, "/", file, NULL);    if (cmd_ln_str_r(ps->config, arg) == NULL && file_exists(tmp))        cmd_ln_set_str_r(ps->config, arg, tmp);    ckd_free(tmp);}
开发者ID:jhector,项目名称:sphinxfuzz,代码行数:10,


示例11: hmmdir_exists

static inthmmdir_exists(const char *path){    FILE *tmp;    char *mdef = string_join(path, "/mdef", NULL);    tmp = fopen(mdef, "rb");    if (tmp) fclose(tmp);    ckd_free(mdef);    return (tmp != NULL);}
开发者ID:jhector,项目名称:sphinxfuzz,代码行数:11,


示例12: process_fsgctl_line

static intprocess_fsgctl_line(ps_decoder_t *ps, cmd_ln_t *config, char const *fname){    fsg_model_t *fsg;    int err;    char *path = NULL;    const char *fsgdir = cmd_ln_str_r(config, "-fsgdir");    const char *fsgext = cmd_ln_str_r(config, "-fsgext");    if (fname == NULL)        return 0;    if (fsgdir)        path = string_join(fsgdir, "/", fname, fsgext ? fsgext : "", NULL);    else if (fsgext)        path = string_join(fname, fsgext, NULL);    else        path = ckd_salloc(fname);    fsg = fsg_model_readfile(path, ps_get_logmath(ps),                                          cmd_ln_float32_r(config, "-lw"));    err = 0;    if (!fsg) {        err = -1;        goto error_out;    }    if (ps_set_fsg(ps, fname, fsg)) {        err = -1;        goto error_out;    }    E_INFO("Using FSG: %s/n", fname);    if (ps_set_search(ps, fname))        err = -1;error_out:    fsg_model_free(fsg);    ckd_free(path);    return err;}
开发者ID:joicemjoseph,项目名称:pocketsphinx.js,代码行数:41,


示例13: build_outdir_one

static intbuild_outdir_one(cmd_ln_t *config, char const *arg, char const *uttpath){    char const *dir;    if ((dir = cmd_ln_str_r(config, arg)) != NULL) {        char *dirname = string_join(dir, "/", uttpath, NULL);        build_directory(dirname);        ckd_free(dirname);    }    return 0;}
开发者ID:joicemjoseph,项目名称:pocketsphinx.js,代码行数:12,


示例14: dvswitch_read_config

void dvswitch_read_config(void (*item_handler)(const char *, const char *)){    read_config("/etc/dvswitchrc", item_handler);    const char * home = getenv("HOME");    if (home)    {	char * home_dvswitchrc = string_join(home, "/.dvswitchrc");	read_config(home_dvswitchrc, item_handler);	free(home_dvswitchrc);    }}
开发者ID:fqxp,项目名称:dvswitch,代码行数:12,


示例15: process_mllrctl_line

static intprocess_mllrctl_line(ps_decoder_t *ps, cmd_ln_t *config, char const *file){    char const *mllrdir, *mllrext;    char *infile = NULL;    ps_mllr_t *mllr;    static char *lastfile;    if (file == NULL)        return 0;    if (lastfile && 0 == strcmp(file, lastfile))        return 0;    ckd_free(lastfile);    lastfile = ckd_salloc(file);    mllrext = cmd_ln_str_r(config, "-mllrext");    if ((mllrdir = cmd_ln_str_r(config, "-mllrdir")))        infile = string_join(mllrdir, "/", file,                              mllrext ? mllrext : "", NULL);    else if (mllrext)        infile = string_join(file, mllrext, NULL);    else        infile = ckd_salloc(file);    if ((mllr = ps_mllr_read(infile)) == NULL) {        ckd_free(infile);        return -1;    }    if (ps_update_mllr(ps, mllr) == NULL) {        ps_mllr_free(mllr);        ckd_free(infile);        return -1;    }    E_INFO("Using MLLR: %s/n", file);    ckd_free(infile);    return 0;}
开发者ID:joicemjoseph,项目名称:pocketsphinx.js,代码行数:40,


示例16: batch_decoder_decode

int batch_decoder_decode(batch_decoder_t *bd, char *file, char *uttid,        int32 sf, int32 ef, alignment_t *al){    featbuf_t *fb;    FILE *infh;    char const *cepdir, *cepext;    char *infile;    int rv;    if (ef != -1 && ef < sf) {        E_ERROR("End frame %d is < start frame %d/n", ef, sf);        return -1;    }    cepdir = cmd_ln_str_r(bd->config, "-cepdir");    cepext = cmd_ln_str_r(bd->config, "-cepext");    /* Build input filename. */    infile = string_join(cepdir ? cepdir : "",            "/", file,            cepext ? cepext : "", NULL);    if (uttid == NULL) uttid = file;    if ((infh = fopen(infile, "rb")) == NULL)    {        E_ERROR_SYSTEM("Failed to open %s", infile);        return -1;    }    fb = search_factory_featbuf(bd->sf);    gettimeofday(&bd->utt_start, NULL);    featbuf_producer_start_utt(fb, uttid);    if (cmd_ln_boolean_r(bd->config, "-adcin"))    rv = batch_decoder_decode_adc(bd, infh, sf, ef, al);    else    rv = batch_decoder_decode_mfc(bd, infh, sf, ef, al);    featbuf_producer_end_utt(fb);    if (bd->hypfh) {        char const *hyp;        int32 score;        hyp = search_hyp(bd->fwdflat, &score);        fprintf(bd->hypfh, "%s (%s %d)/n",                hyp, uttid, score);    }    fclose(infh);    ckd_free(infile);    return rv;}
开发者ID:Ankit77,项目名称:cmusphinx,代码行数:52,


示例17: NBLA_CHECK

void KLMultinomial<T>::setup_impl(const Variables &inputs,                                  const Variables &outputs) {  NBLA_CHECK(inputs[0]->shape() == inputs[1]->shape(), error_code::value,             "Dimensions of inputs must match. "             "inputs[0]: %s != inputs[1]: %s.",             string_join(inputs[0]->shape(), string(", ")).c_str(),             string_join(inputs[1]->shape(), string(", ")).c_str());  Shape_t inshape = inputs[0]->shape();  NBLA_CHECK(base_axis_ < inshape.size(), error_code::value,             "base_axis must be less than ndim of inputs[0]. "             "base_axis: %d >= ndim of inputs[0]: %d.",             base_axis_, inshape.size());  Shape_t outshape(base_axis_ + 1);  for (int i = 0; i < base_axis_; i++) {    outshape[i] = inshape[i];  }  outshape[base_axis_] = 1;  outputs[0]->reshape(outshape, true);}
开发者ID:zwsong,项目名称:nnabla,代码行数:22,


示例18: jsgf_get_rule

jsgf_rule_t *jsgf_get_rule(jsgf_t * grammar, char const *name){    void *val;    char *fullname;    fullname = string_join("<", name, ">", NULL);    if (hash_table_lookup(grammar->rules, fullname, &val) < 0) {        ckd_free(fullname);        return NULL;    }    ckd_free(fullname);    return (jsgf_rule_t *) val;}
开发者ID:Amponti,项目名称:SpeechRecognition_DE1-SOC,代码行数:14,


示例19: CPUID_PRINT

//staticstd::string CPUID::to_string()   {   std::vector<std::string> flags;#define CPUID_PRINT(flag) do { if(has_##flag()) { flags.push_back(#flag); } } while(0)#if defined(BOTAN_TARGET_CPU_IS_X86_FAMILY)   CPUID_PRINT(sse2);   CPUID_PRINT(ssse3);   CPUID_PRINT(sse41);   CPUID_PRINT(sse42);   CPUID_PRINT(avx2);   CPUID_PRINT(avx512f);   CPUID_PRINT(rdtsc);   CPUID_PRINT(bmi1);   CPUID_PRINT(bmi2);   CPUID_PRINT(adx);   CPUID_PRINT(aes_ni);   CPUID_PRINT(clmul);   CPUID_PRINT(rdrand);   CPUID_PRINT(rdseed);   CPUID_PRINT(intel_sha);#endif#if defined(BOTAN_TARGET_CPU_IS_PPC_FAMILY)   CPUID_PRINT(altivec);   CPUID_PRINT(ppc_crypto);#endif#if defined(BOTAN_TARGET_CPU_IS_ARM_FAMILY)   CPUID_PRINT(neon);   CPUID_PRINT(arm_sve);   CPUID_PRINT(arm_sha1);   CPUID_PRINT(arm_sha2);   CPUID_PRINT(arm_aes);   CPUID_PRINT(arm_pmull);   CPUID_PRINT(arm_sha2_512);   CPUID_PRINT(arm_sha3);   CPUID_PRINT(arm_sm3);   CPUID_PRINT(arm_sm4);#endif#undef CPUID_PRINT   return string_join(flags, ' ');   }
开发者ID:webmaster128,项目名称:botan,代码行数:50,


示例20: ps_set_jsgf_file

int ps_set_jsgf_file(ps_decoder_t *ps, const char *name, const char *path){  fsg_model_t *fsg;  jsgf_rule_t *rule;  char const *toprule;  jsgf_t *jsgf = jsgf_parse_file(path, NULL);  float lw;  int result;  if (!jsgf)      return -1;  rule = NULL;  /* Take the -toprule if specified. */  if ((toprule = cmd_ln_str_r(ps->config, "-toprule"))) {      char *ruletok;      ruletok = string_join("<", toprule, ">", NULL);      rule = jsgf_get_rule(jsgf, ruletok);      ckd_free(ruletok);      if (rule == NULL) {          E_ERROR("Start rule %s not found/n", toprule);          return -1;      }  } else {      /* Otherwise, take the first public rule. */      jsgf_rule_iter_t *itor;      for (itor = jsgf_rule_iter(jsgf); itor;           itor = jsgf_rule_iter_next(itor)) {          rule = jsgf_rule_iter_rule(itor);          if (jsgf_rule_public(rule)) {              jsgf_rule_iter_free(itor);              break;          }      }      if (rule == NULL) {          E_ERROR("No public rules found in %s/n", path);          return -1;      }  }  lw = cmd_ln_float32_r(ps->config, "-lw");  fsg = jsgf_build_fsg(jsgf, rule, ps->lmath, lw);  result = ps_set_fsg(ps, name, fsg);  fsg_model_free(fsg);  return result;}
开发者ID:chand3040,项目名称:pocketsphinx.js,代码行数:47,


示例21: ps_expand_file_config

static voidps_expand_file_config(ps_decoder_t *ps, const char *arg, const char *extra_arg,	              const char *hmmdir, const char *file){    const char *val;    if ((val = cmd_ln_str_r(ps->config, arg)) != NULL) {	cmd_ln_set_str_extra_r(ps->config, extra_arg, val);    } else if (hmmdir == NULL) {        cmd_ln_set_str_extra_r(ps->config, extra_arg, NULL);    } else {        char *tmp = string_join(hmmdir, "/", file, NULL);        if (file_exists(tmp))	    cmd_ln_set_str_extra_r(ps->config, extra_arg, tmp);	else	    cmd_ln_set_str_extra_r(ps->config, extra_arg, NULL);        ckd_free(tmp);    }}
开发者ID:Amponti,项目名称:SpeechRecognition_DE1-SOC,代码行数:18,


示例22: populate_entry_config

void populate_entry_config(struct s_gui_data *gui_data){  monconf_entry *entry = gui_data->curr_entry;  if(gui_data->curr_entry)  {    char *ignores = string_join(entry->ignore_files);    gtk_entry_set_text(GTK_ENTRY(gtk_builder_get_object(gui_data->builder,"entryIgnores")), ignores);    free(ignores);    gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(gtk_builder_get_object(gui_data->builder,"filechooserPath")), gui_data->curr_entry->file_name);    gtk_toggle_button_set_active(&(GTK_CHECK_BUTTON(gtk_builder_get_object(gui_data->builder,"checkboxRecursive"))->toggle_button), entry->recursive);	    gtk_toggle_button_set_active(&(GTK_CHECK_BUTTON(gtk_builder_get_object(gui_data->builder,"checkboxOnCreate"))->toggle_button), 				  entry->events & MON_CREATE);	    gtk_toggle_button_set_active(&(GTK_CHECK_BUTTON(gtk_builder_get_object(gui_data->builder,"checkboxOnModify"))->toggle_button), 				  entry->events & MON_MODIFY);	    gtk_toggle_button_set_active(&(GTK_CHECK_BUTTON(gtk_builder_get_object(gui_data->builder,"checkboxOnDelete"))->toggle_button), 				  entry->events & MON_DELETE);	    gtk_toggle_button_set_active(&(GTK_CHECK_BUTTON(gtk_builder_get_object(gui_data->builder,"checkboxOnAttrib"))->toggle_button), 				  entry->events & MON_ATTRIB);	    gtk_toggle_button_set_active(&(GTK_CHECK_BUTTON(gtk_builder_get_object(gui_data->builder,"checkboxOnMovedFrom"))->toggle_button), 				  entry->events & MON_MOVED_FROM);	    gtk_toggle_button_set_active(&(GTK_CHECK_BUTTON(gtk_builder_get_object(gui_data->builder,"checkboxOnMovedTo"))->toggle_button), 				  entry->events & MON_MOVED_TO);	    populate_entry_actions(gui_data, entry);  }   else  {    gtk_entry_set_text(GTK_ENTRY(gtk_builder_get_object(gui_data->builder,"entryIgnores")), "");    gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(gtk_builder_get_object(gui_data->builder,"filechooserPath")), NULL);    gtk_toggle_button_set_active(&(GTK_CHECK_BUTTON(gtk_builder_get_object(gui_data->builder,"checkboxRecursive"))->toggle_button), 0);	    gtk_toggle_button_set_active(&(GTK_CHECK_BUTTON(gtk_builder_get_object(gui_data->builder,"checkboxOnCreate"))->toggle_button), 				  0);	    gtk_toggle_button_set_active(&(GTK_CHECK_BUTTON(gtk_builder_get_object(gui_data->builder,"checkboxOnModify"))->toggle_button), 				  0);	    gtk_toggle_button_set_active(&(GTK_CHECK_BUTTON(gtk_builder_get_object(gui_data->builder,"checkboxOnDelete"))->toggle_button), 				  0);	    gtk_toggle_button_set_active(&(GTK_CHECK_BUTTON(gtk_builder_get_object(gui_data->builder,"checkboxOnAttrib"))->toggle_button), 				  0);	    gtk_toggle_button_set_active(&(GTK_CHECK_BUTTON(gtk_builder_get_object(gui_data->builder,"checkboxOnMovedFrom"))->toggle_button), 				  0);	    gtk_toggle_button_set_active(&(GTK_CHECK_BUTTON(gtk_builder_get_object(gui_data->builder,"checkboxOnMovedTo"))->toggle_button), 				  0);	    populate_entry_actions(gui_data, NULL);  }  }
开发者ID:hiddendog,项目名称:monarqui,代码行数:44,


示例23: path_list_search

/* FIXME: This should go in libsphinxutil */static char *path_list_search(glist_t paths, char *path){    gnode_t *gn;    for (gn = paths; gn; gn = gnode_next(gn)) {        char *fullpath;        FILE *tmp;        fullpath = string_join(gnode_ptr(gn), "/", path, NULL);        tmp = fopen(fullpath, "r");        if (tmp != NULL) {            fclose(tmp);            return fullpath;        }        else            ckd_free(fullpath);    }    return NULL;}
开发者ID:AaronZhangL,项目名称:pocketsphinx.js,代码行数:21,


示例24: populate_entry_actions

void populate_entry_actions(struct s_gui_data *gui_data, monconf_entry *conf_entry){  GtkTreeModel *modelEntries;    GtkTreeIter iter;  monaction_entry *action_entry = NULL;  monconf_action_entry *conf_action_entry = NULL;  gtk_list_store_clear(gui_data->listStoreEntryActions);  GList *action_keys = g_hash_table_get_values(gui_data->conf->actionMap);  GList *item = g_list_first(action_keys);  char *str_globs;    while(item)  {    action_entry = (monaction_entry *)item->data;    str_globs = NULL;    if(conf_entry != NULL)     {      conf_action_entry = monconf_action_entry_get_by_name(conf_entry, action_entry->name);          if(conf_action_entry != NULL)	str_globs = string_join(conf_action_entry->globs);    }        gtk_list_store_append(gui_data->listStoreEntryActions, &iter);    gtk_list_store_set(gui_data->listStoreEntryActions,&iter,           COL_ACTION_ENTRY_ENABLED, (gboolean)(conf_action_entry != NULL),       	   COL_ACTION_ENTRY_NAME, (gchar *)action_entry->name,		                  COL_ACTION_ENTRY_GLOBS, (conf_action_entry != NULL ? str_globs : ""),                      COL_ACTION_ENTRY_CREATE, (conf_action_entry != NULL ? (gboolean)(conf_action_entry->events & MON_CREATE) : (gboolean)0),           COL_ACTION_ENTRY_MODIFY, (conf_action_entry != NULL ? (gboolean)(conf_action_entry->events & MON_MODIFY) : (gboolean)0),           COL_ACTION_ENTRY_DELETE, (conf_action_entry != NULL ? (gboolean)(conf_action_entry->events & MON_DELETE) : (gboolean)0),           COL_ACTION_ENTRY_ATTRIBS, (conf_action_entry != NULL ? (gboolean)(conf_action_entry->events & MON_ATTRIB) : (gboolean)0),           COL_ACTION_ENTRY_MOVED_FROM, (conf_action_entry != NULL ? (gboolean)(conf_action_entry->events & MON_MOVED_FROM) : (gboolean)0),           COL_ACTION_ENTRY_MOVED_TO, (conf_action_entry != NULL ? (gboolean)(conf_action_entry->events & MON_MOVED_TO) : (gboolean)0),           		                 -1          );    if(str_globs)      free(str_globs);    item = item->next;  }    g_list_free(action_keys);}
开发者ID:hiddendog,项目名称:monarqui,代码行数:40,


示例25: detect_sph2pipe

static intdetect_sph2pipe(sphinx_wave2feat_t *wtf){    FILE *fh;    char *cmdline;    int rv;    /* Determine if it's NIST file and get parameters. */    if ((rv = open_nist_file(wtf, wtf->infile, NULL, FALSE)) != TRUE)        return rv;    /* Now popen it with sph2pipe. */    cmdline = string_join("sph2pipe -f raw '", wtf->infile, "'", NULL);    if ((fh = popen(cmdline, "r")) == NULL) {        E_ERROR_SYSTEM("Failed to popen(/"sph2pipe -f raw '%s'/")", wtf->infile);        ckd_free(cmdline);        return -1;    }    wtf->infh = fh;    return TRUE;}
开发者ID:kirpen,项目名称:pocketsphinx.js,代码行数:22,


示例26: lexical_model_rescore_function

float lexical_model_rescore_function(const hypothesis* h, unsigned int id){    information* info = h->get_input();    const std::vector<const symbol*>& source = *info->get_sentence();    std::pair<unsigned int, unsigned int> span = h->get_span();    // check if is the last chart cell    if (span.first != 0 || span.second != source.size()) {        return 0.0f;    }    configuration* config = configuration::get_instance();    model* system_model = config->get_model();    language_model* lm = system_model->get_language_model(id);    lexical_model* lex = static_cast<lexical_model*>(lm);    lexical_model_type type = lex->get_model_type();    std::vector<const std::string*> target;    std::vector<std::pair<unsigned int, unsigned int>> full_align;    std::vector<const std::string*> input;    unsigned int source_size = source.size();    unsigned int target_size = target.size();    unsigned int window_size = lex->get_window_size();    unsigned int rwin = window_size / 2;    unsigned int lwin = window_size - rwin - 1;    unsigned int align_size;    float score = 0.0f;    output_hypothesis(h, target);    output_full_alignment(h, full_align);    input.reserve(window_size + 1);    align_size = full_align.size();    symbol_table* symtab = symbol_table::get_instance();    const symbol* bos = symtab->search_symbol("<s>");    const symbol* eos = symtab->search_symbol("</s>");    const symbol* null = symtab->search_symbol("<null>");    if (type == lexical_model_type::source_to_target) {        std::vector<std::vector<int>> align_vec;        align_vec.resize(source_size);        for (unsigned int i = 0; i < align_size; i++) {            auto& pair = full_align[i];            align_vec[pair.first].push_back(pair.second);        }        for (unsigned int i = 0; i < source_size; i++) {            auto& tgt_align = align_vec[i];            unsigned int vec_size = tgt_align.size();            for (unsigned int j = 0; j < lwin; j++) {                int index = i - lwin + j;                if (index < 0)                    input.push_back(bos->get_name());                else                    input.push_back(source[index]->get_name());            }            input.push_back(source[i]->get_name());            for (unsigned int j = 0; j < rwin; j++) {                int index = i + 1 + j;                if (index >= static_cast<int>(source_size))                    input.push_back(eos->get_name());                else                    input.push_back(source[index]->get_name());            }            if (vec_size == 0) {                input.push_back(null->get_name());            } else {                std::string word;                std::vector<std::string> str_vec;                str_vec.reserve(vec_size);                const symbol* sym;                for (unsigned int j = 0; j < vec_size; j++) {                    str_vec.push_back(*target[tgt_align[j]]);                }                string_join(str_vec, "+++", word);                sym = symtab->search_symbol(word);                input.push_back(sym->get_name());            }            score += lex->probability(input.data());            input.clear();        }    } else {        std::vector<std::vector<int>> align_vec;        align_vec.resize(target_size);        for (unsigned int i = 0; i < align_size; i++) {            auto& pair = full_align[i];            align_vec[pair.second].push_back(pair.first);        }        for (unsigned int i = 0; i < target_size; i++) {//.........这里部分代码省略.........
开发者ID:playinf,项目名称:infdecoder,代码行数:101,


示例27: gi

void CG_GGVar::add(CallableData* p,const String& s,int f){	CG_GGVar& gi(CG_GGVar::current());	arr_1t<String> ap = string_split(s, ".");	size_t n = ap.size();	if(n==0)	{		return;	}		if(n==1)	{		gi[s].kptr(p);		return;	}	if(f!=0)	{		gi[ap[n-1]].kptr(p);	}	VariantTable *pt=&gi;	for(size_t i=0;i<n;i++)	{		if(i+1==n)		{			if (i == 1 && _bInited)			{				gi[s].kptr(p);			}			(*pt)[ap[i]].kptr(p);			break;		}		intptr_t d=pt->find1(ap[i]);		if(d>=0)		{			pt=pt->get(d).second.ptr<VariantTable>();			if (!pt)			{				return;			}		}		else		{			String libname=string_join(ap.begin(),ap.begin()+i+1,".");			DataPtrT<CallableModule> tb = new CallableModule(libname);			(*pt)[ap[i]].kptr(tb);pt=&tb->value;			if (i == 1 && _bInited)			{				gi[ap[0]+"."+ap[1]].kptr(tb);			}		}	}}
开发者ID:xuanya4202,项目名称:ew_base,代码行数:64,


示例28: fopen_comp

FILE *fopen_comp(const char *file, const char *mode, int32 * ispipe){    FILE *fp;#ifndef HAVE_POPEN    *ispipe = 0; /* No popen() on WinCE */#else /* HAVE_POPEN */    int32 isgz;    guess_comptype(file, ispipe, &isgz);#endif /* HAVE_POPEN */    if (*ispipe) {#ifndef HAVE_POPEN        /* Shouldn't get here, anyway */        E_FATAL("No popen() on WinCE/n");#else        if (strcmp(mode, "r") == 0) {            char *command;            switch (isgz) {            case COMP_GZIP:                command = string_join("gunzip" EXEEXT, " -c ", file, NULL);                break;            case COMP_COMPRESS:                command = string_join("zcat" EXEEXT, " ", file, NULL);                break;            case COMP_BZIP2:                command = string_join("bunzip2" EXEEXT, " -c ", file, NULL);                break;            default:                command = NULL; /* Make compiler happy. */                E_FATAL("Unknown  compression type %d/n", isgz);            }            if ((fp = popen(command, mode)) == NULL) {                E_ERROR_SYSTEM("Failed to open a pipe for a command '%s' mode '%s'", command, mode);                ckd_free(command);                return NULL;            }            ckd_free(command);        }        else if (strcmp(mode, "w") == 0) {            char *command;            switch (isgz) {            case COMP_GZIP:                command = string_join("gzip" EXEEXT, " > ", file, NULL);                break;            case COMP_COMPRESS:                command = string_join("compress" EXEEXT, " -c > ", file, NULL);                break;            case COMP_BZIP2:                command = string_join("bzip2" EXEEXT, " > ", file, NULL);                break;            default:                command = NULL; /* Make compiler happy. */                E_FATAL("Unknown compression type %d/n", isgz);            }            if ((fp = popen(command, mode)) == NULL) {                E_ERROR_SYSTEM("Failed to open a pipe for a command '%s' mode '%s'", command, mode);                ckd_free(command);                return NULL;            }            ckd_free(command);        }        else {            E_ERROR("Compressed file operation for mode %s is not supported", mode);            return NULL;        }#endif /* HAVE_POPEN */    }    else {        fp = fopen(file, mode);    }    return (fp);}
开发者ID:andrenatal,项目名称:pocketsphinx-gecko,代码行数:75,


示例29: main

intmain(int argc, char *argv[]){    if (argc < 2)        return 1;    if (!strcmp(argv[1], "string_join")) {        char *foo = string_join("bar", "baz", "quux", NULL);        if (strcmp(foo, "barbazquux") != 0) {            printf("%s != barbazquux/n", foo);            return 1;        }        foo = string_join("hello", NULL);        if (strcmp(foo, "hello") != 0) {            printf("%s != hello/n", foo);            return 1;        }        return 0;    }    else if (!strcmp(argv[1], "fread_line")) {        FILE *fp = fopen(TESTDATADIR "/_fread_line.txt", "r");        char *line;        size_t len;        if (fp == NULL) {            perror("Failed to open " TESTDATADIR "/_fread_line.txt");            return 1;        }        line = fread_line(fp, &len);        printf("len = %d orig = %d/n", len,               strlen("Hello world!/n"));        if (strcmp(line, "Hello world!/n") != 0) {            printf("'%s' != 'Hello world!//n'/n", line);            return 1;        }        ckd_free(line);        line = fread_line(fp, &len);        /* A line of exactly 127 characters. */        printf("len = %d orig = %d/n", len,               strlen("123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456/n"));        if (strcmp(line, "123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456/n") != 0) {            printf("'%s' != '123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456//n'/n", line);            return 1;        }        ckd_free(line);        /* A very long line. */        line = fread_line(fp, &len);        printf("len = %d orig = %d/n", len,               strlen("All work and no play makes Jack a very dull boy.  All work and no play makes Jack a very dull boy.  All work and no play makes Jack a very dull boy.  All work and no play makes Jack a very dull boy.  All work and no play makes Jack a very dull boy.  All work and no play makes Jack a very dull boy.  /n"));        if (strcmp(line, "All work and no play makes Jack a very dull boy.  All work and no play makes Jack a very dull boy.  All work and no play makes Jack a very dull boy.  All work and no play makes Jack a very dull boy.  All work and no play makes Jack a very dull boy.  All work and no play makes Jack a very dull boy.  /n") != 0) {            printf("'%s' != 'All work and no play makes Jack a very dull boy.  All work and no play makes Jack a very dull boy.  All work and no play makes Jack a very dull boy.  All work and no play makes Jack a very dull boy.  All work and no play makes Jack a very dull boy.  All work and no play makes Jack a very dull boy.  //n'/n", line);            return 1;        }        ckd_free(line);        line = fread_line(fp, &len);        if (line != NULL) {            printf("%p != NULL/n", line);            return 1;        }    }    else if (!strcmp(argv[1], "string_trim")) {        char *foo = ckd_salloc("/t foo bar baz  /n");        string_trim(foo, STRING_BOTH);        if (strcmp(foo, "foo bar baz") != 0) {            printf("'%s' != 'foo bar baz'/n", foo);            return 1;        }        string_trim(foo, STRING_BOTH);        if (strcmp(foo, "foo bar baz") != 0) {            printf("'%s' != 'foo bar baz'/n", foo);            return 1;        }        strcpy(foo, "foo/nbar/n/n");        string_trim(foo, STRING_END);        if (strcmp(foo, "foo/nbar") != 0) {            printf("'%s' != 'foo//nbar'/n", foo);            return 1;        }        strcpy(foo, " /t /t foobar/n");        string_trim(foo, STRING_START);        if (strcmp(foo, "foobar/n") != 0) {            printf("'%s' != 'foobar//n'/n", foo);            return 1;        }    }    else if (!strcmp(argv[1], "str2words")) {        char *line = ckd_salloc("    foo bar baz argh");        char **words;        int n;        n = str2words(line, NULL, 0);        if (n != 4) {            printf("%d != 4/n", n);            return 1;        }        words = ckd_calloc(n, sizeof(*words));        n = str2words(line, words, n);        if (n != 4) {            printf("%d != 4/n", n);            return 1;//.........这里部分代码省略.........
开发者ID:AaronZhangL,项目名称:pocketsphinx.js,代码行数:101,


示例30: string_join

void Command::init_command_map(){   command_map["NOOP"] = [](EventHandler &, std::vector<std::string> arg) -> std::string {      std::cerr << "NOOP begin" << std::endl;      std::cerr << string_join(arg, "/n") << std::endl << "end" << std::endl;      return "OK";   };   command_map["PLAY"] = [this](EventHandler &, std::vector<std::string> arg) -> std::string {      if (arg.empty())         arg.push_back("");      try      {         remote->play(arg.front());         arg.erase(arg.begin());         for (auto &str : arg)            remote->add(str);         return "OK";      }      catch(const std::exception &e)      {         std::cerr << e.what() << std::endl;         return "ERROR";      }   };   command_map["QUEUE"] = [this](EventHandler &, std::vector<std::string> arg) -> std::string {      if (arg.empty())         arg.push_back("");      try      {         for (auto &str : arg)         remote->add(str);         return "OK";      }      catch(const std::exception &e)      {         std::cerr << e.what() << std::endl;         return "ERROR";      }   };   command_map["NEXT"] = [this](EventHandler &, std::vector<std::string>) -> std::string {      return plain_action(std::bind(&Remote::next, remote));   };   command_map["PREV"] = [this](EventHandler &, std::vector<std::string>) -> std::string {      return plain_action(std::bind(&Remote::prev, remote));   };   command_map["STOP"] = [this](EventHandler &, std::vector<std::string>) -> std::string {      return plain_action(std::bind(&Remote::stop, remote));   };   command_map["PAUSE"] = [this](EventHandler &, std::vector<std::string>) -> std::string {      return plain_action(std::bind(&Remote::pause, remote));   };   command_map["UNPAUSE"] = [this](EventHandler &, std::vector<std::string>) -> std::string {      return plain_action(std::bind(&Remote::unpause, remote));   };   command_map["SEEK"] = [this](EventHandler &, std::vector<std::string> arg) -> std::string {      if (arg.empty())         throw std::logic_error("SEEK requires argument.");      int time = std::strtol(arg[0].c_str(), nullptr, 0);      return plain_action(std::bind(&Remote::seek, remote, time));   };   command_map["POS"] = [this](EventHandler &, std::vector<std::string>) -> std::string {      try      {         auto pos = remote->pos();         return stringify(static_cast<int>(pos.first), " ", static_cast<int>(pos.second));      }      catch (const std::exception &e)      {         std::cerr << e.what() << std::endl;         return "ERROR";      }   };   command_map["DIE"] = [this](EventHandler &event, std::vector<std::string>) -> std::string {      event.kill();      return "OK";   };   command_map["TITLE"] = [this](EventHandler &, std::vector<std::string>) -> std::string {      return metadata_action(*remote, [](const FF::MediaInfo &info) { return info.title; });   };   command_map["ARTIST"] = [this](EventHandler &, std::vector<std::string>) -> std::string {      return metadata_action(*remote, [](const FF::MediaInfo &info) { return info.artist; });   };   command_map["ALBUM"] = [this](EventHandler &, std::vector<std::string>) -> std::string {      return metadata_action(*remote, [](const FF::MediaInfo &info) { return info.album; });//.........这里部分代码省略.........
开发者ID:Themaister,项目名称:umusd,代码行数:101,



注:本文中的string_join函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ string_length函数代码示例
C++ string_is_equal函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。