首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >strncmp在ObjectARX 2018中不起作用

strncmp在ObjectARX 2018中不起作用
EN

Stack Overflow用户
提问于 2017-10-04 15:04:21
回答 1查看 58关注 0票数 0

在ObjectARX 2018项目中,我们有一个包含以下代码的.c文件:

代码语言:javascript
复制
while(fgetws((wchar_t *)line, 80, fp) != NULL) {
if((!strncmp((const char*)line, "REQ",3)) || (!strncmp((const char*)line, 
"ROL",3)) ||
      (!strncmp((const char*)line, "NLS",3)) || (!strncmp((const char*)line, 
"NDW",3))) {
        //Inside If
      }
      //Outside if
}

此while循环正在读取具有以下数据的文件:

ACAD3|14789536|005|其他批量CA & WIRE,CA RK,AUX FR & LTG

请求|G3060901|1

请求|G3060906|1

请求|G3060907|1

请求|G3062062|4

请求|G3062095|1

只有当行以REQ,ROL,NLS,NDW开始时,我们才需要进入。但是我们不能。

这在ObjectARX 2014中是有效的。

谁能告诉我们怎么解决这个问题。

EN

回答 1

Stack Overflow用户

发布于 2017-10-04 15:08:10

wchar_t是,很可能是与char完全不同的东西,而指针的转换只会使编译器静默。如果你处理的是宽字符,可以使用一些函数,比如wcscmp()和friends:

代码语言:javascript
复制
 wchar_t *line;
 [...]
 if ((!wcsncmp(line, L"REQ", 3))
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46558892

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档