而(isspace(数组))

时间:2016-05-30 17:49:06

标签: c arrays ctype

当i位置为空格时,如何使“while”功能停止?

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <ctype.h>

int main ()
{

    int i,t;
    char array[20];

    t=strlen(array);

    for (i=0;i<=t;i++)
    {
        if(isspace(expressio[i])){
            while (expressio[i+1]!=isspace(expressio[i+1]))
                i=i+1;
            if (isspace(expressio[i+1]))
                { code follows here...}

我可以这样做吗?

我在C编程。

1 个答案:

答案 0 :(得分:3)

不,你不能这样做。

while (expressio[i+1]!=isspace(expressio[i+1]))

毫无意义。 expressio[i+1]是一个字符,而isspace(expressio[i+1])是1或0.您可以将苹果与橙子进行比较。

此外,

char array[20];

t=strlen(array);

也没有意义。如果您将字符串写入array,则strlen将返回该字符串的长度。在初始化strlen之前调用array是没用的(它可能只返回任何内容)。