谁能解释这个C代码的工作原理?

时间:2019-07-15 02:41:17

标签: c

我不知道此代码的工作方式?

#include<stdio.h>

 int main()
 {
     char *s = "PRO coder";
     int n = 7;
     printf("%.*s", n, s);
     return 0;
 }

我得到的结果是“鳕鱼”

1 个答案:

答案 0 :(得分:4)

printf格式的字符串%.*s带有两个参数,*代表数字,最后是s代表字符串,因此它会打印字符串指针{的前7个字符{1}}。通常,只要有数字,就可以使用s代替它作为参数来读取。

如果字符串较长,

*将打印七个字符或更多,而%7s将打印七个字符。因此有时有人会写%.7s来精确打印7个字符。