我正在学习使用write函数,并且我只尝试打印chars缓冲区数组的一部分。所以它看起来像这样:
char *tempChar;
char *buf;
buf=&tempChar;
read(0, buf, 10);
write(1, [???], 1);
我想把buf [3]放在[???]所在的位置,但是没有用。 我也考虑过使用tempChar [3],但这也不起作用。
有什么想法吗?非常感谢。
答案 0 :(得分:2)
您将使用buf + 3
。这是指针算术。它需要buf并为你提供一个新的指针3个字符。 buf[3]
相当于*(buf + 3)
。请注意不需要的取消引用。
另外注意:
buf=&tempChar;
可能不对。
将tempChar变量的地址分配给buf,这可能不是你想要的。