gpt4 book ai didi

c - Tokenizer 只打印第一个标记

转载 作者:太空宇宙 更新时间:2023-11-04 04:36:33 25 4
gpt4 key购买 nike

我在构建分词器时遇到问题。我是 C++ 的新手,想知道是否有人可以提供帮助。

当我运行该程序时,我将用户输入输入为“x = a + 1”。当我这样做时,唯一的标记输出是 x。我想显示 "x\n = a\n +\n 1\n"

#include <iostream>
#include <string>
using namespace std;

int main(void)
{

char *text = (char*)malloc ( 40 *sizeof( char ));
cout << "Enter the first arrangement of data." << endl;
cin >> text;
char *token = strtok(text, " ");
while ( token )
{
if ( strlen(token) > 0 )
{
printf(" %s", token);
}
token = strtok(NULL, " ");
}
return 0;
}

最佳答案

您没有阅读整个输入。

改变

cin >> text;

cin.getline(text, 40);

关于c - Tokenizer 只打印第一个标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30125520/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com