php 5.4.25,php5.4.25的c核心用vs2008sp1编译无法通过。解决思路
php5.4.25的c核心用vs2008sp1编译无法通过。。
自己写了个c扩展,把zend改了改,vs和dev c++都能通过,但一nmake snap就无法通过,报错如下图:
但是注释了对rightJudge的调用就没问题了,说明是这个函数的问题,但搞了很多天了,实在发现不了问题,求大侠帮帮忙!
int rightJudge(char *propertiesBridgePath, char *functionName , int ringNum){
char *functionSplit=NULL,*isFunctionInRing=NULL,*ringFunction=NULL;
char ring[20],ringSuffix[20];
do{
strcpy(ring,"ring_");
//itoa(ringNum,ringSuffix,10);
//strcat(ring,ringSuffix);
sprintf(ring, "%s%d", "ring_", ringNum);
ringFunction =getKeyValueInIni(propertiesBridgePath,"function-ring",ring);
isFunctionInRing=strstr(ringFunction,functionName);
//free(ringFunction);
if(isFunctionInRing!=NULL){
return 0;
}else{
return -1;
}
}while(ringNum++);
return -1;
}
char* getKeyValueInIni(char *filename, char *section, char *key){
char line[255];
char sectname[255];
char *skey=NULL;
char *s=NULL;
char *seps = "=";
int flag = 0,length=0;
FILE *fp = fopen(filename,"r");
assert(fp != NULL);
//process the section and line
memset(line,0,255);
memset(sectname,'\0',sizeof(sectname));
memset(res,'\0',sizeof(res));
if (!strchr(section, '['))
{
strcpy(sectname,"[");
strcat(sectname,section);
strcat(sectname,"]");
}
else
{
strcpy(sectname,section);
}
if(!strchr(sectname, '\n')){
strcat(sectname,"\n");
}
while (fgets(line, 255, fp) != NULL)
{
if (flag)
{
skey = strtok(line, seps);
if (strcmp(skey , key) == 0)
{
s = strtok(NULL,seps);
if(s!=NULL){
// res = (char*)malloc(strlen(s)*sizeof(char));
strcpy(res,s);
fclose(fp);
return res;
}else{
fclose(fp);
return NULL;
}
}
}
else
{
if (strcmp(sectname,line) == 0)
{
flag = 1;
}
}
}
fclose(fp);
return NULL;
}
还有个问题就是不知道为啥在getKeyValueInIni函数中的res变量只能使用数组形式,指针形式在dev c++下会直接停止,vs下没问题。。。
谢谢啦!!
------解决方案--------------------
楼主说的用指针会直接停止具体是什么情况,内存申请成功了吗?
------解决方案--------------------
rightJudge被你注释的那些行,不会影响其他功能么?
php 5.4.25,php5.4.25的c核心用vs2008sp1编译无法通过。解决思路相关推荐
- centos 6.2 编译安装mysql_CentOS 6.2编译安装Nginx1.2.0+MySQL5.5.25+PHP5.3.13
CentOS 6.2编译安装Nginx1.2.0+MySQL5.5.25+PHP5.3.13 2013-10-24 15:31:12 标签:服务器 防火墙 file 配置文件 written 一.配置 ...
- CentOS 6.2编译安装Nginx1.2.0+MySQL5.5.25+PHP5.3.13+博客系统WordPress3.3.2
说明: 操作系统:CentOS 6.2 32位 系统安装教程:CentOS 6.2安装(超级详细图解教程): http://www.osyunwei.com/archives/1537.html 准备 ...
- CentOS 6.2编译安装Nginx1.2.0+MySQL5.5.25+PHP5.3.13
CentOS 6.2编译安装Nginx1.2.0+MySQL5.5.25+PHP5.3.13 2013-10-24 15:31:12 标签:服务器 防火墙 file 配置文件 written 一.配置 ...
- php5.5.25升级到php5.6.30,加载yaf.so报错解决方法!
2019独角兽企业重金招聘Python工程师标准>>> 按照 "yaf 实践(安装&部署)",进入已有 yaf-2.3.5 文件夹,重新装一遍yaf,ph ...
- linux telnet localhost 25,telnet localhost 25 没反应. 大家帮忙看下什么问题...
telnet localhost 25 没反应. 大家帮忙看下什么问题... (2012-01-10 05:46:33) 标签: localhost 杂谈 telnet localhost 25 没反 ...
- UE4学习-4.25版本Possess无法继承、UNavigationSystem命名空间找不到的解决方法
文章目录 Possess无法继承 UNavigationSystem 不存在 Possess无法继承 跟着视频学习吃豆人游戏,在敌人AI导航网格那里,因为版本问题(我的是4.25版本),部分内容和视频 ...
- 王者服务器维护什么时间结束8月25,8月25日体验服停机更新公告
亲爱的召唤师: 为了增加体验服内容的丰富性和版本的稳定性,我们计划2017年8月25日19:30-8月25日20:30(19:00关闭PVP)对<王者荣耀>体验服进行停机更新. 更新完成时 ...
- c语言中gets全拼,25英文【25英文英语头条】- 25英文知识点 - 中企动力
顺口溜来学习英语,至少有三大好处: 一是节省了时间. 死记硬背效果差不说,还费时间,而利用顺口溜,效率又高又省时: 二是培养了自己的概括思维能力. 把一些词语编成顺口溜,看似容易,其实也难: 三是使人 ...
- 惊现:淘宝bug = 3.25 =3月25日(我的思考)
点击蓝色关注,回复"职级"获取知名互联网公司职级定义 北京时间3月25日凌晨首现,上午10:10分,可复现,估计是S1复现,目前推测是存在3.25的报复可能. 为什么这么说呢? 阿 ...
最新文章
- react遇到的各种坑
- linux如何查tomcat是否安装,如何检测linux机器上是否安装了tomcat和ant
- G6 图可视化引擎——入门教程——元素及其配置
- 挖洞技巧:APP手势密码绕过思路总结
- selenium操作chrome时的一些配置
- 【centOS】centOS安装图形界面
- 落花美眷,终究抵不过逝水流连,回忆我的2016,展望2017。
- TCL语言笔记:TCL过程控制练习
- WebSocket,不再“轮询”
- 【多媒体封装格式详解】---MKV【1】
- 融合阿里云,牛客助您找到心仪好工作
- 16QAM 硬判决(Matlab)
- ajax 获取访问者ip,jQuery获取访问者IP地址的方法(基于新浪API与QQ查询接口)
- 安装linux系统的pe软件,Linux和win系统制作U盘pe启动方法
- 如何根据经纬度查询地理位置
- html标点符号在首页,HTML常用的特殊符号前端使用的标点符号
- Modelsim与ISE联和仿真错误
- 如何将eclipse项目和svn关联(从服务器取项目)
- 【C++11】左值引用和右值引用
- JAVA SE 005——类型转换
热门文章
- 将 Kubernetes 云原生技术革命进行到底!
- 进程全家桶,看这一篇就够了 | 原力计划
- 前百度主任架构师创业,两年融资千万美元,他说 AI 新药研发将迎来黄金十年...
- Go 语言为什么能成功?
- 那些年 iOS 升级踩过的坑!
- 华为正式发布自有操作系统——鸿蒙 OS!
- 刷屏了!这篇Python学习贴,90%的程序员都用的上!
- 从“谈芯”走向“用芯” RISC-V 未来前景光明?
- @前端工程师,节约网站流量用这一招就够了!
- Google 究竟是不是要用 Fuchsia OS 取代 Android?