Tag: 令牌

#include是关键字类型的标记吗?

虽然学习CI让我的第一个主题是令牌。 当我看到这段代码时很容易得到图片。 int main() { int x, y, total; x = 10, y = 20; total = x + y; printf (“Total = %d \n”, total); } 到目前为止这么好……现在我在这里看一下这个: #include int main() { /* code */ printf(“Hello C world! \n”); return 0; } 我想知道#include 中的#include 是否是一个令牌。 如果是的话,它应该是关键字吗?

获取错误“预期标识符或’(’在C之前的”’标记

任何帮助都会很棒! #include #define pi 3.14159 int main() { float r; char PI; /*Program for circumference. */ printf(” This is a program that will calculate circumference.\n”); printf(“Please put in your radius.\n”); scanf(“%f”, &r); printf(“Please input PI\n”); PI = getchar(); } { if {(char != PI || 3.14); printf(“Incorect value\n”); } else { printf(“Thank you, the circumference […]

为什么要弃用strtok()?

我从很多程序员那里听到,strtok的使用可能在不久的将来被弃用。 有人说它还在。 为什么这是一个糟糕的选择? strtok()在标记给定字符串时效果很好。 它是否必须对时间和空间的复杂性做任何事情? 我在互联网上找到的最佳链接就是这个 。 但这似乎并没有解决我的好奇心。 如果可能,建议任何替代方案。

从C中的文件打印标记化数据

我一直试图通过首先对文件进行标记来读取文件中的数据。 在这个例子中,我已经做到这一点,它要求你先自己输入数据(我已经确定有效),然后读取它,但用空格标记。 因此,如果我要进入’Hello World’,它应该返回:’Hello,World’。 这是我的代码。 char fname[] = “myfile”; FILE *fp; fp = fopen(fname, “w+”); char buffer[20]; sprintf(prompt, “Enter your string: “, MAX_TAN_INPUT); getString(number, MAX_TAN_INPUT, prompt); printf(“\n”); if (fp == NULL) { fprintf(stderr, “Unable to open file %s\n”, fname); } else { printf(“YAYYY. It opened!\n”); fprintf (fp, “%s\n”, number); fseek(fp, SEEK_SET, 0); fread(buffer, strlen(fp)+1, 1, […]

无法比较令牌

我做了一个代码来使用C来标记文件中的数据。如果当前令牌等于SIOL我想打印一些数据。 我的问题是strcmp不起作用。 你能发现任何错误吗? 这是代码。 谢谢您的帮助 int main() { FILE* fp; char line[1024]; char *val1; fp = fopen(“sample1.txt” , “r”); while (fgets(line, sizeof(line), fp) != NULL) { val1 = strtok(line, ” “); if (strcmp(val1,”SIOL”)==0) { printf(“Sucess!”); return 0; } else { while(val1) { printf(“%s\n”, val1); val1=strtok(NULL, ” “); } } } } 像这样的sample1.txt: HAHA SIOL Hello […]

在c语句中计算标记

以下C语句中的标记数。 printf(“i = %d, &i = %x”, i, &i); 我想这里有12个令牌。 但我的回答是错误的。 谁能告诉我如何在上述C语句中找到令牌? PS:我知道令牌是源程序文本,编译器不会将其分解为组件元素。

正确使用sscanf

我应该得到一个输入行,可以是以下任何格式: 在单词1和单词2之间必须有空格。 在单词2和单词3之间必须有逗号。 在单词2和单词3之间不是必须的空格 – 但是任何数量的空格都是可能的。 如何分离1,2和3个单词的情况并将数据放入正确的变量? word1 word1 word2 word1 word2 , word3 word1 word2,word3 我想到了类似的东西: sscanf(“string”, “%s %s,%s”, word1, word2, word3); 但它似乎没有用。 我使用严格的C89。

如何在C中将字符串拆分为标记?

如何在C中用’&’将字符串拆分为标记?