可以用一个循环一个一个的判断字符串中是否有回车,然后将它下一个字符赋给变量,最后退出循环。
下面是具体代码:
#include <stdio.h>#include <string.h>
#define SIZE 100 //字符串长度
int main(void)
{
char str[SIZE] = "12345\n6789" //被检测字符串
char c //储存回车后变量
int i //循环控制变量
for (i = 0 i < strlen(str) i++)
{
if (str[i] == '\n')
{
c = str[i+1]
printf("该字符串中有回车,回车后一位字符是") //有回车时输出内容
if (i + 1 == strlen(str)) //回车在字符串结尾时
{
printf("\\0")
}
else //回车在字符串中时
{
printf("%c", c)
}
break
}
}
if (i == strlen(str)) //无回车时
{
printf("该字符串中无回车")
}
return 0
}
该段代码运行后输出是:
该字符串中有回车,回车后一位字符是6
运行正常
可以改动str测试其他情况,也可以写一段代码自行输入字符串。
也许....你i没初始化代码也有点问题
#include <stdio.h>int main(int argc, char const *argv[]) {
char psg[100] = "\0"
int i = 0
do
{
psg[i] = getchar ( )
i++
}while ( i <= 100)
return 0
}