5

コードに出くわしました:
printf("\tout:\t%-14.14s\n", (sprintf(tmpbuf[0], "[%s]", mystring), tmpbuf[0]));
sprintf の () 内の文はどういう意味ですか?

4

1 に答える 1

10

以下を 1 行にまとめるために、コンマ演算子を含む式です。

sprintf(tmpbuf[0], "[%s]", mystring);
printf("\tout:\t%-14.14s\n", tmpbuf[0]);

コンマ演算子は両方の引数を評価し、その右の引数、つまり を返しますtmpbuf[0]

于 2012-10-05T12:38:11.133 に答える