| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 899 人关注过本帖
标题:新手不知道哪里写错了
只看楼主 加入收藏
gift19870204
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-6-28
结帖率:0
收藏
已结贴  问题点数:20 回复次数:7 
新手不知道哪里写错了
#include <stdio.h>

#include <ctype.h>

main()

{
    char *str[]={"nagaki","turumaki","nakada",NULL};

    int i,j;

    for(i=0;str[i]!=NULL;i++)

    {
       for(j=0;*(str[i]+j)!='\0';j++)

       *(str[i]+j)=toupper(*(str[i]+j));

       printf("%s\n",str[i]);
    }
}

说明:小写转大写,结果运行后出错。。
搜索更多相关主题的帖子: include 
2011-06-28 21:26
obstratiker
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:1
帖 子:198
专家分:758
注 册:2011-5-5
收藏
得分:3 
字符串放在内存的常量区,是不可改的
代码中有修改字符串的动作
2011-06-28 22:27
cnfarer
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:179
帖 子:3330
专家分:21157
注 册:2010-1-19
收藏
得分:3 
不同编译器结果是不同的!

★★★★★为人民服务★★★★★
2011-06-28 22:28
ansic
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:恍惚窈冥
等 级:城市猎人
帖 子:1543
专家分:5367
注 册:2011-2-15
收藏
得分:3 
2L有理,可以考虑用二维字符数组

善人者,不善人之师;不善人者,善人之资。不贵其师,不爱其资,虽智大迷。
2011-06-28 22:35
h_mastuade
Rank: 2
等 级:论坛游民
帖 子:21
专家分:86
注 册:2011-6-28
收藏
得分:3 
同上  str 被初始化为指向字符串的指针  后面不能修改它的值
2011-06-28 23:53
官人
Rank: 3Rank: 3
来 自:瓮安
等 级:论坛游侠
帖 子:88
专家分:152
注 册:2011-6-2
收藏
得分:3 
继续同上  不同编译器根本不同

   ---------------天道刚健,你不自强谁来帮你---------------
2011-06-29 09:46
cosdos
Rank: 9Rank: 9Rank: 9
来 自:ShangHai
等 级:蜘蛛侠
威 望:6
帖 子:2109
专家分:1385
注 册:2007-6-19
收藏
得分:3 
#include <ctype.h>     for (i=0; str[i]; ++i) {for (j=0; *(str[i]+j); ++j) {putchar(toupper(*(str[i]+j)));}putchar('\n');}

[ 本帖最后由 cosdos 于 2011-6-29 14:52 编辑 ]

—>〉Sun〈<—
2011-06-29 14:48
gift19870204
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-6-28
收藏
得分:0 
明白了,谢谢各位!
2011-06-29 17:53
快速回复:新手不知道哪里写错了
数据加载中...
 
   



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

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