我写了一个函数,用于缩短请求长度的字符串(单词的句子)。 我不希望句子的剪切恰好在一个单词的中间。 所以我跳过n个字符,直到我到达一个空格并在那里剪切句子串。 我的问题不是一个真正的问题,编译我的函数时会发出一条警告:“警告:未使用计算值”,请参阅代码中的注释行。 该function虽然按预期工作。 所以,无论是我是盲目的,还是我长期坚持我的项目,实际上我不明白这个警告。 有人可以指出我在function上的缺陷吗?
char * str_cut(char *s, size_t len) { char *p = NULL; int n = 3; p = s + len; if (p s)) *p = '.'; } return s; }
我在开发机器上的编译器是“gcc版本4.2.4(Ubuntu 4.2.4-1ubuntu4)”
警告是由*
(取消引用)引起的 – 您没有在任何地方使用取消引用的值。 做到这一点:
p--;
警告应该消失。
*p--
与*(p--)
相同。
评估减量,然后取消引用该结果。 您实际上并没有对该结果做任何事情,因此警告。 如果你只是说*p
你会得到同样的警告。
你只是为副作用这样做
*p--;
编译器警告你没有使用表达式的值:-)
以上就是c/c++开发分享在c函数中指针“未计算值”相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/c-cdevelopment/572334.html