我想打印一部分字符串。我的程序应该从begin打印字符,直到字符串为例如字符:\"
例如:
char* text = "abcdef\"ghij";
我想得到:abcdef
我没有C经验,所以请以明确的方式帮助我。
答案 0 :(得分:4)
使用*
字段宽度选择要打印的字符数:
#include <stdio.h>
#include <string.h>
char* text = "abcdef\"ghij";
printf("%.*s\n", (int) (strchr(text, '"') - text), text);
答案 1 :(得分:3)
在循环中通过char打印char,直到停止字符出现或当前字符变为假,即为空终止符。
#include <stdio.h>
char* text = "abcdef\"ghij";
char stop = '"';
for (char *i = text; *i && *i != stop; i++)
putc(*i, stdout);
答案 2 :(得分:-1)
int i=0;
while(i < sizeof(text))
{
if(text[i] == '\"')
break;
else
printf("%c",text[i]);
i++;
}