strcmp行为[英] strcmp behaviour

本文是小编为大家收集整理的关于strcmp行为的处理方法,想解了strcmp行为的问题怎么解决?strcmp行为问题的解决办法?那么可以参考本文帮助大家快速定位并解决问题。

问题描述

当我运行下面的code:

 的#include<&stdio.h中GT;INT主(INT ARGC,CHAR *的argv [])
{    INT p值= 0;    P = STRCMP(NULL,"富");    返回0;}

我得到分段错误.回声$? 139.说但是当我运行

 的#include<&stdio.h中GT;INT主(INT ARGC,CHAR *的argv [])
{    INT p值= 0;    STRCMP(NULL,"富");    返回0;}

我没有得到任何分段错误.可能有人请扔掉一些轻?

下面是我的gcc信息:

 > GCC --version
海湾合作委员会(GCC)3.4.6 20060404(红帽3.4.6-8)

解决方案

您可能正在使用的优化选项编译时.由于的strcmp()在第二个片段,结果被忽略编译器消除了这一函数调用,这就是为什么你的程序不会崩溃.此调用只能因为的strcmp()是一种内在函数,编译器知道这个函数没有任何副作用.被淘汰

本文地址:https://www.itbaoku.cn/post/359157.html