| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1111 人关注过本帖
标题:[新手问题]请问这个字符串的程序有什么错误?
只看楼主 加入收藏
naski
Rank: 1
等 级:新手上路
帖 子:35
专家分:0
注 册:2007-7-5
收藏
 问题点数:0 回复次数:4 
[新手问题]请问这个字符串的程序有什么错误?
--------------------------------------------------------------------------------------------------------
问题:将主函数中给出的字符串中的大写字母替换为小写字母。
--------------------------------------------------------------------------------------------------------
源代码:
#include<iostream>
using namespace std;
void my_strlwr(char *s);    //定义一个将字符串中的大写字母替换为小写字母的函数
int main()
{
   char *str="Hello,The World!";
   my_strlwr(str);
   return 0;
}
void my_strlwr(char *s)
{
    char *sh;
    sh=s;                   //定义一个指针指向字符串的串头字符
    while(*s!='\0')
    {
    if(*s>='A'&&*s<='Z');
    *s=*s-32;               //疑问:这样大小写转化可以吗?      
     s++;    
    }
   cout<<sh<<endl;
}
--------------------------------------------------------------------------------------------------------
请大家指点,我找不到问题所在,先谢谢了。
搜索更多相关主题的帖子: 字符 
2007-12-10 10:17
wuyu520
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-1-29
收藏
得分:0 
1;你的IF后面的;除掉
2;*S = *S + 32;
3;char *str="Hello,The World!";和char str[]="Hello,The World!";的区别;
char *str="Hello,The World!";是不常量不能改变;
2008-01-29 16:30
eagleboycn
Rank: 1
等 级:新手上路
帖 子:191
专家分:0
注 册:2007-9-26
收藏
得分:0 
2楼正解!(第三条有疑问?)
在<cctype>里面有tolower,toupper函数啊,直接转换大小写,还有检测大小写的bool函数
楼主:
你定义一个sh=s;
那你还用*s干吗?

兵法的精要在于韬晦自己
2008-01-29 16:54
SNAKEQX
Rank: 1
等 级:新手上路
帖 子:112
专家分:3
注 册:2006-4-11
收藏
得分:0 
关于第三点,请详细解释其区别.我到现在都没弄懂.谢谢.我是菜鸟,请大家多多指教.
2008-02-02 15:33
天使梦魔
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:37
帖 子:564
专家分:2754
注 册:2007-8-29
收藏
得分:0 
往指针里写值,很有才........
指针不分配空间,你可以用

string str="Hello,The World!";
void my_strlwr(string *s) //用指针来取值
{
  cout<<*s;
}
my_strlwr(&str);//引用取得str的地址
---------------------------------------------
最简单的说明:
如果函数的参数是一般变量,那函数使用的时候会再次声请一个string的空间.
如果函数的参数是指针,那函数处理str的时候直接在str的空间里处理数据.

cout<<&str;//你可以看到这个变量在内存中的地址.
上面的函数相当于string *s=&str;
在处理*s的时候相当于直接处理str.

如果参数是一般变量,就相当于string s=str;
在处理的时候先把str的内容复制给s,然后进行运算.

如果还看不懂,先跳过这一节吧.
2008-02-02 19:08
快速回复:[新手问题]请问这个字符串的程序有什么错误?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017587 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved