c/c++语言开发共享一种scanf

scanf中一种很少见但很有用的转换字符:[…]和[ ^…]。 #include < stdio.h > main() { char strings[100];

scanf中一种很少见但很有用的转换字符:[…]和[ ^…]。

  #include < stdio.h >  main() {      char strings[100];      scanf("%[1234567890]", strings);      printf("%s", strings);      return 0;  }

运行,输入:1234werew后,结果是:1234。

通过运行可以发现它的作用是:如果输入的字符属于方括号内字符串中某个字符,那么就提取该字符;如果一经发现不属于就结束提取。该方法会自动加上一个字符串结束符到已经提取的字符后面。

scanf("%[^1234567890]",strings); 它的作用是:如果一经发现输入的字符属于方括号内字符串中某个字符,那么就结束提取;如果不属于就提取该字符。该方法会自动加上一个字符串结束符到已经提取的字符后面。

注意:方括号两边不能空格,如:scanf("%[ 1234567890 ]",strings); scanf("%[ ^1234567890]",strings); 不让空格也会算在里面的。

用这种方法还可以解决scanf的输入中不能有空格的问题。只要用scanf("%[^n]",strings); 就可以了。

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/c-cdevelopment/606313.html

(0)
上一篇 2021年5月13日
下一篇 2021年5月13日

精彩推荐