牛骨文教育服务平台(让学习变的简单)
博文笔记

C语言中 for循环内的break语句跳出的问题

创建时间:2014-10-20 投稿人: 浏览次数:3290
void MakeShortName(uint8 *str)
{
    uint8 i = 0;
    uint8 ext[3];
    memcpy(ext, &str[8], 3);
    for (; i < 8; i++)
    {
        if (str[i] == " ")
        {

            break;   //这里的break当满足条件后是跳出if语句还是跳出for循环??
        }            //
    }
    str[i++] = ".";
    memcpy(&str[i], ext, 3);
    i += 3;
    for (; i < 20; i++)
    {
        str[i] = " ";
    }
    str[i] = 0;
}



break语句break语句通常用在循环语句和开关语句中。当break用于开关语句switch中时,可使程序跳出switch而执行switch以后的语句;如果没有break语句,则将成为一个死循环而无法退出。break在switch 中的用法已在前面介绍开关语句时的例子中碰到,这里不再举例。当break语句用于do-while、for、while循环语句中时,可使程序终止循环而执行循环后面的语句, 通常break语句总是与if语句联在一起。即满足条件时便跳出循环。注意:1) break语句对if-else的条件语句不起作用。2) 在多层循环中, 一个break语句只向外跳一层。对于问题,就是跳出for循环,执行循环后面的语句,即str[i++] = ".";语句
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。