strcmp函数的问题

char a[16][128];
a[0][1]里的字符串可以确认是"VER"
if(strcmp((char*)a[0][1],"VER")==0)
{
这里进不来,不出打印
printf("DO HERE\n");
}

strcmp将两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇'\0'为止。
可能在"VER"后面还有别的字符,

可以用strncmp来比较指定长度的字符串:
int strncmp ( const char * str1, const char * str2, size_t num );
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-07-03
a是个char型二维数组,a[0][1]中就不可能是字符串,只是1个字符,怎么会是"VER"?只有a[0]才可能是"VER"!把strcmp((char*)a[0][1],中的a[0][1]改成a[0]试试……本回答被网友采纳
第2个回答  2013-07-03
你printf("string is %s\n", a[0][1])看看不就知道了
第3个回答  2013-07-03
字符串是以“\0”作为结束符的,你得先把a【0】【1】里最后的那个“\0”给去掉
第4个回答  2013-07-03
a[0][1]里的字符串可以确认是"VER"?a[0][1]只是一个字符啊。。。

关于strcmp()的问题
int strcmp(char *p1,char *p2){int i=0;while (*(p1+i)==*(p2+i))if (*(p1+i++)=='\\0') return 0;\/* 这里是先判断*(p1+i)=='\\0',然后再是i++ *\/ return (*(p1+i)-*(p2+i));} 从上面代码可以看出:1.strcmp的返回值是一个整型数int,两个字符串相等返回值0,若...

strcmp函数出现的问题
当string<i时,返回值<0 当string==i时,返回值=0 当string>i时,返回值>0 即:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇'\\0'为止

用strcmp函数被告知参数值太小而无法执行是为什么?
strcmp函数是一个C语言函数,它接受两个参数:两个字符串。当您提供的参数值太小,例如提供一个空字符串或一个只包含一个字符的字符串,strcmp函数将无法执行。这是因为strcmp函数需要比较两个字符串,而提供的字符串只有一个,所以无法执行比较操作。

C语言中关于strcmp函数的问题,下面一题为什么不对???
char a[4],b[4]; 声明数组容量过小,只能存3个字符的字符串,极容易溢出 strcmp函数当a和b相等时返回0,否则不相等 所以判断if(strcmp(a,b))的结果不是能否比较,而是是否相等,if成立则不相等,否则相等

strcmp函数算法的问题
strcmp是字符串比较的函数 字符串str1如果大于str2 则返回值为1 小于返回-1 相等时候返回值为零 你这里ken肯定是用来做字符串比较了 若两字符串相同则继续循环 但是strcmpfa返回的是零 若继续循环 则表达式为必须为真值 所以去反 若字符串不同 则返回的值为1或者-1 他们都是真值 布尔型变量true ...

C语言 strcmp函数,最后判断语句的问题
你好,这是你对strcmp函数理解错误了。其原型是:extern int strcmp(const char *s1,const char * s2);其功能是比较字符串s1与字符串s2,在C语言中,返回值有下面的规则得到:当S1<S2时,返回值为-1 当S1==S2时,返回值为0 当S1>S2时,返回值为1 而在C++中,返回值是按照下面的规律得到:...

strcmp函数问题
其实这个值就是两个字符串的第一个不同ascii码的差 题目中第一个不同的字符是'\\0'和a '\\0'的ascii码的值是0,a的ascii码值是97,0 - 97 = -97

strcmp函数的问题
strcmp将两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇'\\0'为止。可能在"VER"后面还有别的字符,可以用strncmp来比较指定长度的字符串:int strncmp ( const char * str1, const char * str2, size_t num );...

C语言编程strcmp函数的问题
strcmp()函数原型是 int strcmp(const char *s1,const char *s2)如果s1的字符串在机器编码顺序中落后于s2,函数返回值是一个大于0的整数;如果两个字符串相同的话,返回值是0;如果第一个字符串在机器编码顺序中先于第二个字符串,返回值是一个<0的数。看函数的返回值类型是 int,那么你就...

strcmp函数的问题(MATLAB)
strcmp函数的功能是比较字符串。strcmp函数使用的格式为 TF = strcmp(C,S)那么,这个语句 if( (strcmp(fnames(img).name , '.')==1) || (strcmp(fnames(img).name , '..')==1)) 的作用是当fnames(img)图片文件夹处于当前文件夹和上一级文件夹时,执行下一段语句,。。。

相似回答