入力データの処理 - 文字列の一致判定

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
大熊
記事: 15
登録日時: 3週間前

入力データの処理 - 文字列の一致判定

#1

投稿記事 by 大熊 » 3週間前

文字列の一致を確認したいです。if後を
(strcmp(str, "paiza"))にしたのですが駄目でした。どのように入力すればよろしいでしょうか

コード:

#include <stdio.h>
#include <string.h>
// ----------------------------------------
// [入力データの処理 - 文字列の一致判定2]
// ----------------------------------------
// 入力の文字列が"paiza"ならば"good"
// そうでなければ"bad"と出力してください

int main(void) {
char buf[100], str[10];
fgets(buf, sizeof(buf), stdin);
sscanf(buf, "%s", str);

if ((str, "paiza")) { // strcmpで文字列の一致を確認
printf("good");
} else {
printf("bad");
}
}
 

box
記事: 1787
登録日時: 10年前

Re: 入力データの処理 - 文字列の一致判定

#2

投稿記事 by box » 3週間前

コード中のどこで
strcmp()を使っているんですか?
見当たりません。
バグのないプログラムはない。
プログラムは思ったとおりには動かない。書いたとおりに動く。

box
記事: 1787
登録日時: 10年前

Re: 入力データの処理 - 文字列の一致判定

#3

投稿記事 by box » 3週間前

strcmp()
は、第1引数と第2引数の中身が
「一致している」ときに「ゼロ」を返しますので
ご注意あれ。
バグのないプログラムはない。
プログラムは思ったとおりには動かない。書いたとおりに動く。

返信

“C言語何でも質問掲示板” へ戻る