A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 马文浩 中级黑马   /  2013-4-28 16:23  /  3191 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Console.WriteLine("我的姓名是{0},我的性别是{1}我今年{2}岁,我的身高是{3}厘米,
                  我的体重是{4}千克,我月薪{5}元.",zsname,sex,age,height,weight,wages);

上面的那句代码怎么才能不报错?
因篇幅问题,()中的内容自动换行,该怎么连接?

评分

参与人数 1技术分 +1 收起 理由
杞文明 + 1

查看全部评分

5 个回复

倒序浏览
没事的 可以换行! 可以这样!
Console.WriteLine(@"我的姓名是{0},我的性别是{1}我今年{2}岁,                           //可以加@符号
                   我的身高是{3}厘米,我的体重是{4}千克,我月薪{5}元."
                          ,zsname,sex,age,height,weight,wages);

评分

参与人数 1技术分 +1 收起 理由
杞文明 + 1

查看全部评分

回复 使用道具 举报
namespace 测试
{
    class Program
    {
        static void Main(string[] args)
        {
            string zsname = "张三";
            string sex = "男";
            int age = 18;
            int height = 180;
            double weight = 90;
            decimal wages = 8000m;
            Console.WriteLine("我的姓名是{0},我的性别是{1}我今年{2}岁,我的身高是{3}厘米,我的体重是{4}千克,我月薪{5}元.",zsname,sex,age,height,weight,wages);
            Console.ReadKey();

        }
    }
}
这段代码测试了一下,输出部分没有毛病,应该是在定义的时候,你可以检查一下定义的时候是不是哪个地方有什么小纰漏,int ,string,double,decimal是不是哪个定义的问题;至于你说的哪个换行,可以在编译情况下设置一下自动换行
工具->选项->文本编辑器->C#,这里面有一项就是

评分

参与人数 1技术分 +1 收起 理由
杞文明 + 1

查看全部评分

回复 使用道具 举报
赵威 发表于 2013-4-28 17:10
namespace 测试
{
    class Program

他换行了所以不是定义问题! 换行问题!
且看 :"我的姓名是{0},我的性别是{1}我今年{2}岁,我的身高是{3}厘米,
//这里换行能不报错?所以换行前要加@     我的体重是{4}千克,我月薪{5}元.",zsname,sex,age,height,weight,wages);

回复 使用道具 举报
出错是因为你吧字符串给拆开了,用引号引住的字符是不能分开的,
也可以这样写,分开输出,还有一种方法,用连接符输入也行,
Console.WriteLine("我的姓名是{0},zsname);
Console.WriteLine("性别{0},sex);
Console.WriteLine("今年{0}岁,age);
Console.WriteLine("我的身高是{0},heigh);
Console.WriteLine("我的体重是{0},weight);
Console.WriteLine("我的工资是{0},wages);

评分

参与人数 1技术分 +1 收起 理由
杞文明 + 1

查看全部评分

回复 使用道具 举报
本帖最后由 黄晓波 于 2013-4-29 09:25 编辑

Console.WriteLine("我的姓名是{0},我的性别是{1}我今年{2}岁,我的身高是{3}厘米,
                   我的体重是{4}千克,我月薪{5}元.",zsname,sex,age,height,weight,wages);
上面的代码中,注意换行的地方:
(1)如果是有设置VS的自动换行设置,是自动换的行,则没有问题,不会报错。
(2)如果是你手动换的行,则应该在前面加上@,即:Console.WriteLine(@"我的姓名是{0},我的性别是{1}我今年{2}岁,我的身高是{3}厘米,
                   我的体重是{4}千克,我月薪{5}元.",zsname,sex,age,height,weight,wages);
这里的@,是表示按原格式输出后面的内容,比如输出文件路径Console.WriteLine(@“C:\Program Files\Baidu”),这里就有忽略“\”的转义左右
不在前面加@,又手动换行会报错,是因为程序在编译的时候把你回车换行也编译进去了,Console.WriteLine()可没有中间加上回车换行的这个重载函数
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马