c - 我正在学习 C 并且我制作了一个简单的程序。它不起作用,我需要一个答案

标签 c windows error-handling stack codeblocks

我正在学习C,我做了一个简单的程序,但它不起作用。这是代码:

#include <stdio.h>
#include <windows.h>

int main(int argc, char* argv[]){
    system("title test");
    printf("Arguments: %i\n", argc);
    for (int i, int i <= %s, argv[i], i++){
        switch (%s, argv[i]){
        case 1:
            printf("First Argument: %s\n", argv)
        }
    }
    return 0;
}
我打算添加更多内容,但首先我需要找出问题所在。请用答案来回答这个问题。我可能暂时不会回复,因为我很快就要 sleep 了。抱歉,如果我违反了任何规则,我是 Stack Overflow 的新手,我还没有阅读规则,如果有的话。
顺便说一下,这里是错误的事情:
| 7|error: expected identifier or '(' before 'int'|
| 7|error: expected expression before ',' token|
| 8|error: expected expression before '%' token|
|11|error: expected ';' before '}' token|
|  |=== Build failed: 4 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|

最佳答案

您的程序中有几个错误:

  • %s没有任何意义
  • for (int i, int i <= %s, argv[i], i++)是错误的,并且没有任何意义。
  • 一个 break您的 case 中缺少.这里没有害处,但只要你添加更多 case s 你会遇到麻烦的。
  • 你想要i < argc , argc至少为 1,因为 argv[0]是程序的名称。

  • 你可能想要这个:
    #include <stdio.h>
    #include <windows.h>
    
    int main(int argc, char* argv[]) {
      system("title test");
      printf("Arguments: %i\n", argc);
      for (int i = 0; i < argc; i++) {  // use i < argc
        switch (i) {
        case 1:
          printf("First Argument: %s\n", argv[i]);
          break;   // this was missing
        }
      }
      return 0;
    }
    
    顺便说一句,如果在这里,应将开关/外壳替换为:
      for (int i = 0; i < argc; i++) {
        if (i == 1) {
          printf("First Argument: %s\n", argv[i]);
        }
      }
    

    关于c - 我正在学习 C 并且我制作了一个简单的程序。它不起作用,我需要一个答案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65142626/

    相关文章:

    windows - 什么是 %0|%0 以及它如何工作?

    java - 错误 :Execution failed for task ':app:packageAllDebugClassesForMultiDex' . >

    magento - 出现错误您必须至少选择一种付款方式。在Magento中进行M2E集成

    c - 为 Windows 库添加 unicode 支持

    windows - 此记事本 (.bat) 代码有什么作用以及如何工作?

    javascript - 无法在 'postMessage' GoogleTagManager 上执行 'Window'

    c - 为什么我们需要 stdin 作为输入函数的文件版本?

    c++ - c++ : fread() 中奇怪的文件读取问题

    c - ==符号是什么意思?

    c - getchar() 的意外输出