C编程ispunct()函数用于验证

时间:2012-11-02 02:31:59

标签: string validation punctuation

目前我正在使用字符串来收集输入,我想不允许输入有任何标点符号,除了DOT(。)

例如:

char str[10];
int i,valid=1;

    do{
      printf("Input: ");
      fgets(str,10,stdin);

      for(i=0;i<strlen(str);i++)
      {
        if(ispunct(str[i])) //i want it to accept DOT(.)
        {
          printf("punctuation is not allowed!\n");
          valid=0;
          break;
        }
        else
          valid=1;
      }
    }while(valid==0);

感谢高级所有专业人士。

1 个答案:

答案 0 :(得分:1)

你可能想要:

     if(ispunct(str[i]) && str[i]!='.')