作者kahang (总会有办法的)
看板C_and_CPP
标题[问题] strupr
时间Thu Sep 3 10:01:31 2009
请问一下
strupr()的参数原型我查过是 char *strupr(char *s)
可是下面的程式不会过
#include <string.h>
int main()
{
char *s="aBcDeF";
printf("%s",strupr(s));
return 0;
}
可是宣告成
char s[]="aBcDeF";
就可以了
所以strupr只能吃s[]而不能吃 *s吗
囧 谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.169.99.158
1F:推 th19883617:试试看改成char *s=new char [10]; 09/03 10:04
2F:→ th19883617:strcpy(s,"aBcDeF"); 再丢进去 09/03 10:05
3F:→ kahang:这样可以 可是我在想原本的 char* 出了什麽问题啊 orz 09/03 10:07
4F:→ th19883617:没有配置空间给他 09/03 10:07
5F:→ kahang:所以char *s="aBcDeF";算是不好的coding习惯吗 09/03 10:23
6F:→ kahang:应该用char s[]="aBcDeF";或 new 之类的 09/03 10:24
7F:推 LPH66:置底十诫之四 09/03 10:45
8F:推 marcX:根据strupr的参数宣告应该会直接修改原本的内容。 09/03 10:45
9F:→ LPH66:strupr 会改动所给的字串, 所以不能使用此种方式 09/03 10:45