-2

当 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 编程。

4

1 回答 1

3

不,你不能这样做。

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

没有意义。 expressio[i+1]是一个字符,whileisspace(expressio[i+1])是 1 或 0。您将苹果与橙子进行比较。

除了,

char array[20];

t=strlen(array);

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

于 2016-05-30T18:03:00.467 回答