【解決方法】Missing Termination とはどういう意味ですか? " キャラクターの意味?

プログラミングQA

[ad_1]

このプログラムを実行しようとしていますが、同じエラーが発生し続けます。 終了文字がないことの意味と、コードでこれらの問題を修正するにはどうすればよいですか? 私にとっては、Repl ですべてが正常に動作します。 コピーして Linux に貼り付けたところ、これらすべてのエラーが発生しました。

RPS.c:162:10: 警告: 終端の ” 文字がありません
RPS.c: 関数「printResults」内:
RPS.c:162: エラー: 終端の ” 文字がありません
RPS.c:163: エラー: 「%」トークンの前に式が必要です
RPS.c:163:9: 警告: 終端の ” 文字がありません
RPS.c:163: エラー: 終端の ” 文字がありません
RPS.c:164: エラー: 予期された â;â before â}â トークン

コード:

C++
/*
    * Description: Game of Rock, Paper, Scissors with the Computer.
    *
    * Author: Cole 
    *
    * Date: 10-12-2018
    */
    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>
    //FUNCTION DECLARATIONS
    /*Function Name: flushscanf
    Input Parameters: c
    Description: Used after scanf. Prevents scanf from messing up, and EOF is used so it isn't read after the end of the file.
    Return Values: void
    */
    void flushScanf(void);
    
    /*Function name: compareInputs
    Input parameters: userInput
    Description: Determines whether user input is acceptable to run the program. Makes upper and lower case r, p, s, and q acceptable inputs.
    Return Values: Results, error statement, or rock/paper/scissors.
    */
    int compareInputs(char);
    
    /*Function name: getInput
    Input parameters: The userInput.
    Description: Tallies the wins for the computer and user, as well as the ties.
    Return Values: myWins++, pcWins++, or ties++.
    */
    char getInput();
    
    /*Function name: printResults
    Input parameters: int myWins, int pcWins, and int ties.
    Description: Prints the tallied wins and ties.
    Return Values: printf statement with correct record of results from games played.
    */
    void printResults(int, int, int);
    
    
    int main(void) {
    //variables
    char userInput;
    int flag=1;
    int myWins= 0;
    int pcWins= 0;
    int ties= 0;
    int result;
    
    printf("Let’s play a game of Rock/Paper/Scissors \n");
    
    //
    do{
      userInput = getInput();
      if(userInput == 'Q' || userInput == 'q') {
        printResults(myWins, pcWins, ties);
        printf("\nThank you for playing!");
        flag =0;
        }else if(userInput == 'R' || userInput == 'r'){
        userInput = 'r';
        }else if(userInput == 'P' || userInput == 'p'){
        userInput = 'p';
        }else if(userInput == 'S' || userInput == 's'){
        userInput = 's';
        }else{
          printf("Error, Please try again\n ");
        }
    
        result = compareInputs(userInput);
    
        switch(result){
          case 1:
            myWins++;
            break;
    
            case 2:
            pcWins++;
            break;
    
            case 3:
            ties++;
            break;
        }
    }while(flag==1);
    
    
    
    
    
      return 0;
    
      
    }
    char getInput(void){
      char userInput;
      printf("\nEnter R, P, S, or Q (for quit):");
      scanf("%c", &userInput);
      flushScanf();
    
     
      return userInput;
    }
    
    char check(char input){
    
    }
    
    int compareInputs(char userInput){
    srand(time(NULL));
    
    int pc = (rand()%3)+1;
    // 1 = Rock
    // 2 = Paper
    // 3 = Scissors
    if (pc==1 && userInput == 'r'){
      printf("You picked Rock, the computer picked Rock.\n");
      printf("It's a tie.\n");
      return 3;
    } else if(pc==1 && userInput == 's'){
      printf("You picked Scissors, the computer picked Rock.\n");
      printf("Rock breaks Scissors, you lose!\n");
      return 2;
      }else if(pc==1 && userInput == 'p'){
        printf("You picked Paper, the computer picked Rock.\n");
        printf("Paper covers rock, you win!\n");
        return 1;
      }else if (pc==2 && userInput == 'r'){
        printf("You picked Rock, the computer picked Paper.\n");
        printf("Paper covers rock, you lose.\n");
        return 2;
      } else if (pc==2 && userInput == 's'){
        printf("You picked Scissors, the computer picked Paper.\n");
        printf("Scissors cuts Paper, you win!\n");
        return 1;
      } else if (pc==2 && userInput == 'p'){
        printf("You picked Paper, the computer picked Paper.\n");
        printf("It's a tie.\n");
        return 3;
      } else if (pc==3 && userInput == 'r') {
        printf("You picked Rock, the computer picked Scissors.\n");
        printf("Rock breaks Scissors, you win!\n");
        return 1;
      } else if (pc==3 && userInput =='s'){
        printf("You picked Scissors, the computer picked Scissors.\n");
        printf("It's a tie\n");
        return 3;
      }  else if (pc==3 && userInput == 'p'){
      printf("You picked Paper, the computer picked Scissors.\n");
      printf("Scissors cuts paper, You lose!\n");
      return 2;
      }
      return 4;
    }
    
    void printResults(int myWins, int pcWins, int ties){
      printf("\nYou won %d times, the computer won %d times, and it was a tie %d times", myWins, pcWins, ties);
    }
    
    void flushScanf(void) {
      char c = getchar();
    
      while (c != '\n' && c != EOF) {
        c = getchar();
        }
      }

私が試したこと:

エディターが異なる文字システムを使用している場合に備えて、引用符やその他の句読点を再入力しました。

解決策 2

これは、行とエラーの原因を示すコンパイラからのエラー メッセージです。 文字列を終了するのを逃したように聞こえます。

C++
//your code
char *text = "Hello world;
C++
//correct code
char *text = "Hello world";

あなたにとってのわずかな違い しかし コンパイラにとって大きな違いです;-)

ヒント: 複数のエラーでは、最初のエラーが重要なエラーです。 トランプの家のように、他の人を誘発するかもしれません。

解決策 1

引用:

エディターが異なる文字システムを使用している場合に備えて、引用符やその他の句読点を再入力しました。

これは、問題が解決されたため、お客様に代わって修正できないことを意味します。 ほとんどの場合、二重引用符の 1 つが欠落しているか、代わりに一重引用符を入力しています。ただし、表示されているコードは、ここにコピーして貼り付けたときに説明したエラーを発生させないため、問題は既に解決されています!

ただし、別のエラーが発生します。 check 関数は何もせず、値を返しません。

解決策 6

#include
#include

構造化学生
{
イントロール;
フロート名[20]、コース[20];
};
ボイドメイン()
{
学生のストゥオブジ;
ifstream fp;
fp.open(*student.dat”, ios ::バイナリ);
fp.read((char *)&stuobj,sizeof(stuobj));
clrscr();
cout<<"\n学籍番号:"<

解決策 7

#include<fstream.h>
#include<conio.h>
#include<stdio.h>

struct student
{
	int roll;
	float name[20],course[20];
};
void main()
{
	student stuobj;
	ifstream fp;
	fp.open(*student.dat", ios ::binary);
	fp.read((char *)&stuobj,sizeof(stuobj));
	clrscr();
	cout<<"\nStudent's Roll No.:"<<stuobj.roll;
	cout<<"\nStudent's Name:";
	Puts(stuobj.name);
	cout<<"\nStudent's  class:;
	puts(stuobj.course);
	cout<<"\nStudent's Presentage of Marks_percent;
	getch(); 
}

[ad_2]

コメント

タイトルとURLをコピーしました