C言語の話題のみ取り扱います C++の話題はC++スレへ
質問には最低限の情報(ソース/コンパイラ/OS)を付ける
数行で収まらないソースは以下を適当に使ってURLを晒す
https://paiza.io/
https://ideone.com/
http://codepad.org/
C11
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1570.pdf
C99
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf
http://kikakurui.com/x3/X3010-2003-01.html
C FAQ 日本語訳
http://www.kouno.jp/home/c_faq/
JPCERT C コーディングスタンダード
https://www.jpcert.or.jp/sc-rules/
前
C言語なら俺に聞け 144
https://mevius.5ch.net/test/read.cgi/tech/1514025223/
次スレを立てる時は本文の1行目に以下を追加して下さい
!extend:on:vvvvv:1000:512
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
探検
C言語なら俺に聞け 145
レス数が900を超えています。1000を超えると表示できなくなるよ。
1デフォルトの名無しさん (ワッチョイ 9381-qput)
2018/02/19(月) 22:13:58.98ID:9/te2eSJ0838デフォルトの名無しさん (ワッチョイ 738a-Z7Iu)
2018/04/18(水) 02:40:14.81ID:whM0Cl8U0 あるとするなら組込系かな
回路図とアセンブラは出来るの?
回路図とアセンブラは出来るの?
839デフォルトの名無しさん (スップ Sd1f-CG16)
2018/04/18(水) 03:38:30.78ID:5PSc4Ve9d >>838
ありがとうございます
ありがとうございます
840デフォルトの名無しさん
2018/04/18(水) 06:50:02.81 今どき組み込み系もPythonできなきゃやっていけない時代よ
841デフォルトの名無しさん (ワッチョイ a350-96DA)
2018/04/18(水) 06:58:40.17ID:JUjvxXNW0 組み込みは圧倒的にC言語が多い
842デフォルトの名無しさん
2018/04/18(水) 07:26:37.24 >>841
ツール類は一昔前ならPerl/Ruby/TTL(TeraTerm)/VBA、今はPythonが必須だよ
ツール類は一昔前ならPerl/Ruby/TTL(TeraTerm)/VBA、今はPythonが必須だよ
843デフォルトの名無しさん (ワッチョイ a350-96DA)
2018/04/18(水) 07:55:12.06ID:JUjvxXNW0 ツール類ってなんだよ
組み込みの話をしてるの
機器内部のファームウェア
組み込みの話をしてるの
機器内部のファームウェア
844デフォルトの名無しさん
2018/04/18(水) 08:03:28.70 >>843
組み込み系開発者がCソースだけいじってればいいと思ってんのか
組み込み系開発者がCソースだけいじってればいいと思ってんのか
845デフォルトの名無しさん (ワッチョイ a350-96DA)
2018/04/18(水) 08:06:09.63ID:JUjvxXNW0 大部分の組み込みだとYES
他の言語など使わない
他の言語など使わない
846デフォルトの名無しさん (ワッチョイ a350-96DA)
2018/04/18(水) 08:07:13.14ID:JUjvxXNW0 C言語以外が必要なのは大規模な物だけ
847デフォルトの名無しさん (ワッチョイ 7ff9-Xhbj)
2018/04/18(水) 08:15:48.27ID:Acg84ZKa0 >>837
そういうことはプログラム板ではなくプログラマ板で聞いてこい
そういうことはプログラム板ではなくプログラマ板で聞いてこい
848デフォルトの名無しさん (アウアウウー Sae7-QFn6)
2018/04/18(水) 08:30:18.84ID:8g/N/Bw3a >>844
いい。
いい。
849デフォルトの名無しさん (ワッチョイ 738a-Z7Iu)
2018/04/18(水) 08:59:26.18ID:whM0Cl8U0 最悪、シーケンサ(PC)でラダー図とアセンブラ触ってりゃ
行けるでしょ。
MELSEC-iQ-RとかはC言語で書く(OSはVxWorks)
ま所詮は他人の人生である
行けるでしょ。
MELSEC-iQ-RとかはC言語で書く(OSはVxWorks)
ま所詮は他人の人生である
850デフォルトの名無しさん (ワッチョイ 135b-ycE0)
2018/04/18(水) 09:49:03.96ID:bX/oR0u10 Cでさえオーバースペックでアセンブラという場合まである
851デフォルトの名無しさん (スップ Sd1f-96DA)
2018/04/18(水) 09:57:01.68ID:8LhMtFC1d アセンブラでさえオーバースペックでバイナリエディタという場合まである
852デフォルトの名無しさん (ワッチョイ 738a-D6/M)
2018/04/18(水) 10:32:00.37ID:MgMoBevw0 >>851
参考までにアセンブラがオーバースペックなマイコン(SoC)って何処の製品か教えて
参考までにアセンブラがオーバースペックなマイコン(SoC)って何処の製品か教えて
853デフォルトの名無しさん (ワントンキン MM9f-Z7Iu)
2018/04/18(水) 10:40:41.42ID:0P72JrSeM あるとすればIMSAIとかだろうけど、流石にネタだろ
854デフォルトの名無しさん (アウアウカー Sa47-p2KG)
2018/04/18(水) 11:16:51.20ID:gg2GabAwa プログラムを動かすボードが貧弱でも開発は豪華なPCでやるんだから最低でもアセンブラ使えるようにはするだろう。
作ったばかりのCPUで他のCPUとの互換性が全くなくアセンブラもまだない、なんていう特殊な状況でない限りは。
作ったばかりのCPUで他のCPUとの互換性が全くなくアセンブラもまだない、なんていう特殊な状況でない限りは。
855デフォルトの名無しさん (アウアウウー Sae7-QFn6)
2018/04/18(水) 11:45:29.90ID:8g/N/Bw3a マウンティング頑張れ
856デフォルトの名無しさん (スップ Sd1f-96DA)
2018/04/18(水) 12:36:20.65ID:8LhMtFC1d ごめんなさい
ネタです
ネタです
857デフォルトの名無しさん (アウアウカー Sa47-p2KG)
2018/04/18(水) 12:57:38.66ID:gg2GabAwa mount /dev/sda
858デフォルトの名無しさん (ワッチョイ 43bb-LJHW)
2018/04/18(水) 23:26:56.70ID:1I0zrtwW0 組込み屋だけど会社によって状況違うんだなとしみじみ
859デフォルトの名無しさん (ワッチョイ e39f-ycE0)
2018/04/18(水) 23:58:14.05ID:BI6oaZDa0 この頃は組み込みって言っても Linux が動いちゃうような小さいボードあるしな。
SDメモリに平気で何Gもデータ入れちゃったりもできるし。なんとういか、時代は変わったよな。
昔は2KBと4KBのROMに詰め込むためにビット単位で削っていたもんな。
SDメモリに平気で何Gもデータ入れちゃったりもできるし。なんとういか、時代は変わったよな。
昔は2KBと4KBのROMに詰め込むためにビット単位で削っていたもんな。
860デフォルトの名無しさん (ラクッペ MMcb-x+X/)
2018/04/19(木) 00:35:24.22ID:q2wFspbLM 組み込みって昔から小っちゃいのから馬鹿デッカいものまであるから一括りにするのが間違い
861850 (ワッチョイ b7bd-9jjH)
2018/04/19(木) 05:33:01.08ID:IwtdBTTY0 なんかネタレスで返されてるな
とあるLEDアレイの案件では並列に重きを置き
CPUあたりの処理能力は思いっきり低い
なんてのがあったんだが
とあるLEDアレイの案件では並列に重きを置き
CPUあたりの処理能力は思いっきり低い
なんてのがあったんだが
862デフォルトの名無しさん (アウアウカー Sa43-9Dln)
2018/04/19(木) 12:39:01.79ID:oHD1faOFa あまりに面倒ならハードウェアで回路追加して解決
863デフォルトの名無しさん (スププ Sdba-QjU0)
2018/04/19(木) 22:41:42.50ID:Uac+F3+Td あんまりそれすると、またハード屋に小言言われるぞ。
864デフォルトの名無しさん (ワッチョイ 76e7-l7dU)
2018/04/19(木) 23:07:31.74ID:p3OUOmjs0 int a[] = {0,1,2,3};
char b =0;
scanf("%d",&b);
printf("%d",a[b]);
知恵袋でこんな質問があって俺も不思議に思って持ってきたんだけど
色んな数字入れても0になるとか書かれてたんだけどこれどうなってるの?
char b =0;
scanf("%d",&b);
printf("%d",a[b]);
知恵袋でこんな質問があって俺も不思議に思って持ってきたんだけど
色んな数字入れても0になるとか書かれてたんだけどこれどうなってるの?
865デフォルトの名無しさん (ワッチョイ 4e81-9jjH)
2018/04/19(木) 23:17:20.36ID:/9NYPZwG0 >>864
自分で試してみた?
自分で試してみた?
866デフォルトの名無しさん (ワッチョイ 76e7-l7dU)
2018/04/19(木) 23:21:55.11ID:p3OUOmjs0 >>865
100入れてみたら3が返ってきたw
100入れてみたら3が返ってきたw
868デフォルトの名無しさん (ワッチョイ 83b3-sFFS)
2018/04/19(木) 23:23:39.27ID:XF7JHHHf0 エンディアンによるような気もするがー
%d は int の大きさを持った器のポインタを要求してるのに
char の大きさの器を渡してるから どうなろうがしったこっちゃない鼻から悪魔系の動作
%d は int の大きさを持った器のポインタを要求してるのに
char の大きさの器を渡してるから どうなろうがしったこっちゃない鼻から悪魔系の動作
869デフォルトの名無しさん (ワッチョイ 76e7-l7dU)
2018/04/19(木) 23:29:53.26ID:p3OUOmjs0 これがエラーにならず動いてしまうという悪魔のCの動作か
870デフォルトの名無しさん (ワッチョイ 4e81-9jjH)
2018/04/19(木) 23:30:32.30ID:/9NYPZwG0 char b[4] = {0};
scanf("%d",&b[0]);
printf("%d %d %d %d\n",b[0],b[1],b[2],b[3]);
これをVCとGCCで試してみた
結果は配列先頭要素に代入され、残りは0のままだった
scanf("%d",&b[0]);
printf("%d %d %d %d\n",b[0],b[1],b[2],b[3]);
これをVCとGCCで試してみた
結果は配列先頭要素に代入され、残りは0のままだった
871デフォルトの名無しさん (ワッチョイ baf9-udCU)
2018/04/19(木) 23:31:48.87ID:x2EYL8xQ0 >>867
bの型がcharなのが肝なんだからそこは間違えるなよ
bの型がcharなのが肝なんだからそこは間違えるなよ
872デフォルトの名無しさん (ワッチョイ 83b3-sFFS)
2018/04/19(木) 23:33:18.23ID:XF7JHHHf0 >>870
入力で負の値を渡すと…
入力で負の値を渡すと…
873デフォルトの名無しさん (アウアウウー Sa47-jD/J)
2018/04/19(木) 23:33:42.76ID:lwH23MPfa intだからな
874デフォルトの名無しさん (ワッチョイ 4e81-9jjH)
2018/04/19(木) 23:36:41.07ID:/9NYPZwG0 なるほど、入力値が小さいときは、
後ろの配列が変わってないかのように見えるだけって事か
後ろの配列が変わってないかのように見えるだけって事か
>>868
char 配列の大きさを表す変数が int であっても、あるいはそうでなくても、それは関係ないのでは?
char 配列の大きさを表す変数が int であっても、あるいはそうでなくても、それは関係ないのでは?
876デフォルトの名無しさん (ワッチョイ 83b3-sFFS)
2018/04/19(木) 23:38:53.72ID:XF7JHHHf0 >>871
あ!
あ!
878デフォルトの名無しさん (ワッチョイ 83b3-sFFS)
2018/04/19(木) 23:40:18.78ID:XF7JHHHf0 >>875
printf ではなく scanf のフォーマットでの %d 指定に char 変数のポインタを渡してる話よ?
printf ではなく scanf のフォーマットでの %d 指定に char 変数のポインタを渡してる話よ?
880デフォルトの名無しさん (アウアウウー Sa47-jD/J)
2018/04/20(金) 00:50:00.05ID:G/kLZxdya 警告って出ないもん?
881デフォルトの名無しさん (ワッチョイ 578a-/Wij)
2018/04/20(金) 01:57:12.33ID:wjKqEKEv0 関数の引数はスタックサイズに丸められるよ
882デフォルトの名無しさん (アウアウウー Sa47-jD/J)
2018/04/20(金) 02:04:42.67ID:G/kLZxdya ポインタだしなあ
883デフォルトの名無しさん (ワッチョイ 2393-MaWf)
2018/04/20(金) 06:13:59.91ID:EDYH6GYd0884デフォルトの名無しさん (ワッチョイ 2350-Incm)
2018/04/20(金) 06:51:33.68ID:9tWrHk9l0885デフォルトの名無しさん (ワッチョイ b727-9jjH)
2018/04/20(金) 07:58:37.73ID:eEDtLY6e0 アホな点をいくつ見つけられるかで
各自のアホ度を測定できるな
各自のアホ度を測定できるな
886デフォルトの名無しさん (スップ Sd5a-rWRa)
2018/04/20(金) 09:31:45.52ID:OLFb+zqBd それがデバッグと言われる行為だろ?
887デフォルトの名無しさん (ワンミングク MM8a-/Wij)
2018/04/20(金) 10:21:13.71ID:xd9k5+f1M 脳がwormhole だらけなんでしょ
888デフォルトの名無しさん (ワッチョイ 76e7-l7dU)
2018/04/20(金) 14:21:22.42ID:33OB1hDw0 char *line;
scanf("%s", &line);//dogが入る
if(line=="dog")
{
printf("dogですよ");
}
これってなんでdogと合わないん?
scanf("%s", &line);//dogが入る
if(line=="dog")
{
printf("dogですよ");
}
これってなんでdogと合わないん?
889デフォルトの名無しさん (ワッチョイ e38a-0RFE)
2018/04/20(金) 14:26:31.37ID:UQRLXIIQ0 >>888
scanf で受けとる変数をchar型の配列にしましょう
scanf で受けとる変数をchar型の配列にしましょう
890デフォルトの名無しさん (スップ Sd5a-rWRa)
2018/04/20(金) 14:30:58.92ID:OLFb+zqBd >>888
line=="dog" という式は strcmp関数にしましょう
line=="dog" という式は strcmp関数にしましょう
891デフォルトの名無しさん (ワッチョイ 4eea-sFFS)
2018/04/20(金) 14:31:04.87ID:JZAZQDTS0 文字列の比較は == ではなく、strcmp 等の比較関数をつかいましょう
892デフォルトの名無しさん (ササクッテロロ Sp3b-qxIM)
2018/04/20(金) 15:15:01.27ID:uy6ZTS8Ap アドレスの一致を比較してるからじゃね?
893デフォルトの名無しさん (スップ Sd5a-Incm)
2018/04/20(金) 15:17:13.71ID:RdXrGqPUd C言語はプロ向きの言語
「とりあえず動かしてみる」
とかいう用途には向かない
入門書とかできちんと勉強しよう
「とりあえず動かしてみる」
とかいう用途には向かない
入門書とかできちんと勉強しよう
894デフォルトの名無しさん (ワッチョイ 4eea-sFFS)
2018/04/20(金) 15:20:02.90ID:JZAZQDTS0 >char *line;
>scanf("%s", &line);
この2行に色々な罠や誤りが仕込まれてるな。
Cで躓くであろう、ポインタと配列、文字と文字列周辺
(セキュリティや入力のオーバーランは考慮せず簡便なので書くと)
char line[256];
scanf("%s", line);
>scanf("%s", &line);
この2行に色々な罠や誤りが仕込まれてるな。
Cで躓くであろう、ポインタと配列、文字と文字列周辺
(セキュリティや入力のオーバーランは考慮せず簡便なので書くと)
char line[256];
scanf("%s", line);
895デフォルトの名無しさん (アウアウカー Sa43-9Dln)
2018/04/20(金) 17:03:59.70ID:OzeM0EoQa896片山博文MZ ◆T6xkBnTXz7B0 (スフッ Sdba-gnn3)
2018/04/20(金) 17:21:20.04ID:PF4NyNv9d >>894
char line[64];
size_t len;
fgets(line, sizeof(line), stdin);
len = strlen(line);
if (len && line[len - 1] == '\n') line[len - 1] = 0;
if(strcmp(line, "dog") == 0)
{
printf("dogですよ\n");
}
char line[64];
size_t len;
fgets(line, sizeof(line), stdin);
len = strlen(line);
if (len && line[len - 1] == '\n') line[len - 1] = 0;
if(strcmp(line, "dog") == 0)
{
printf("dogですよ\n");
}
897片山博文MZ ◆T6xkBnTXz7B0 (スフッ Sdba-gnn3)
2018/04/20(金) 17:28:09.55ID:PF4NyNv9d char line[64];
fgets(line, sizeof(line), stdin);
strtok(line, "\n");
if(strcmp(line, "dog") == 0)
{
printf("dogですよ\n");
}
fgets(line, sizeof(line), stdin);
strtok(line, "\n");
if(strcmp(line, "dog") == 0)
{
printf("dogですよ\n");
}
898デフォルトの名無しさん (ワッチョイ b727-9jjH)
2018/04/20(金) 18:00:02.24ID:eEDtLY6e0 char line[256];
scanf("%255s", line);
scanfを使えないアホが
scanfをdisるのを見る度に
嘲笑するのも勿体ない気分になる
scanf("%255s", line);
scanfを使えないアホが
scanfをdisるのを見る度に
嘲笑するのも勿体ない気分になる
899デフォルトの名無しさん (ワッチョイ 76e7-l7dU)
2018/04/20(金) 18:02:13.70ID:rQE2Qud50 これでもし入力条件が不明の長さで受け取らなきゃ行けなかったらどうすればいい?
901デフォルトの名無しさん (ワッチョイ 578a-/Wij)
2018/04/20(金) 18:10:03.88ID:wjKqEKEv0 *ぐらい使えよ
902片山博文MZ ◆T6xkBnTXz7B0 (スフッ Sdba-gnn3)
2018/04/20(金) 18:10:57.05ID:PF4NyNv9d std::getline
一文字ずつ読み込む
一文字ずつ読み込む
903デフォルトの名無しさん (アウアウカー Sa43-9Dln)
2018/04/20(金) 18:40:42.36ID:dyY1ZlsFa gccならgetline()
904片山博文MZ ◆T6xkBnTXz7B0 (スフッ Sdba-gnn3)
2018/04/20(金) 18:44:42.17ID:PF4NyNv9d 入力バッファにちょっとゴミが混じるだけでscanfは使えなくなる。
そんな役立たずは、業務では使うべきではない。使うなら、fgetsとsscanfの方がいい。
我が国のコンピューター教育は残念ながら、業務では役に立たない言語を教えている。
そんな役立たずは、業務では使うべきではない。使うなら、fgetsとsscanfの方がいい。
我が国のコンピューター教育は残念ながら、業務では役に立たない言語を教えている。
905デフォルトの名無しさん (ワッチョイ 578a-Elb0)
2018/04/20(金) 19:13:13.94ID:2JMfU3z40 むしろ余程プアな環境でない限り、業務でC言語は使うべきではない
>>905
かわりに何を使えばいいですか?
かわりに何を使えばいいですか?
907デフォルトの名無しさん
2018/04/20(金) 19:55:43.39 >>906
Python
Python
908デフォルトの名無しさん (ワッチョイ 2350-Incm)
2018/04/20(金) 20:49:36.44ID:9tWrHk9l0 業務でこそC言語
909デフォルトの名無しさん (ワッチョイ 5ff7-Stg3)
2018/04/20(金) 20:55:22.00ID:18ECoYTh0 COBOLかVB
910デフォルトの名無しさん (アウアウウー Sa47-9jjH)
2018/04/20(金) 21:04:02.42ID:qDS4Ifrca >>905
心配しなくても使われる所は限られてるよ。
OSそのものとかデバイスドライバとかな。
それも減りつつあるんじゃないかな。
まあしかし過去の資産がありすぎて捨てられないって感じか。
うまいこと互換性を保ちつつ次の段階へ行ければいいんだろうけどね。
心配しなくても使われる所は限られてるよ。
OSそのものとかデバイスドライバとかな。
それも減りつつあるんじゃないかな。
まあしかし過去の資産がありすぎて捨てられないって感じか。
うまいこと互換性を保ちつつ次の段階へ行ければいいんだろうけどね。
911デフォルトの名無しさん (ワッチョイ 2350-Incm)
2018/04/20(金) 21:08:14.53ID:9tWrHk9l0 MCUはほとんどがC言語
たまにC++
たまにアセンブラ
たまにC++
たまにアセンブラ
912デフォルトの名無しさん (ドコグロ MM92-cuLp)
2018/04/20(金) 22:17:00.80ID:DDZisBasM >>899
その受け取ったデータをどう使うかによる
その受け取ったデータをどう使うかによる
913デフォルトの名無しさん (ワッチョイ b39f-9jjH)
2018/04/21(土) 00:13:25.41ID:Oxipuy330 >>901
scanf() の * は・・・
scanf() の * は・・・
914デフォルトの名無しさん
2018/04/21(土) 03:47:37.05ID:Ynju1Yzg hallo warld
915デフォルトの名無しさん (ワッチョイ 8a7f-+rmP)
2018/04/21(土) 03:55:01.78ID:nJ9/ilUK0 >>914
ばかに見えるから止めた方がいいと思うよ
ばかに見えるから止めた方がいいと思うよ
916デフォルトの名無しさん (ワッチョイ b727-9jjH)
2018/04/21(土) 06:07:34.81ID:pETeS31u0917デフォルトの名無しさん (ワッチョイ b727-9jjH)
2018/04/21(土) 06:24:19.45ID:pETeS31u0 >>904
898の例でゴミが問題になるのか?
898の例でゴミが問題になるのか?
918デフォルトの名無しさん (ワッチョイ 5fab-9jjH)
2018/04/21(土) 15:05:42.05ID:WYiI1Hbl0 入力された文字列(例えば10文字程度)を、
数字だけ*に変えるプログラムを作りたいと思ってるんですが、
どうもうまく行きません
どなたか簡単なコード書いてくれませんか
数字だけ*に変えるプログラムを作りたいと思ってるんですが、
どうもうまく行きません
どなたか簡単なコード書いてくれませんか
919デフォルトの名無しさん
2018/04/21(土) 15:31:16.54920デフォルトの名無しさん
2018/04/21(土) 15:32:52.02 ああ、あと入力された文字列にはマルチバイト文字が含まれるのか、1バイト文字なのかも明確にしとかないとな
921デフォルトの名無しさん (アウアウカー Sa43-udCU)
2018/04/21(土) 15:33:17.96ID:VeVDn114a >>918
お前さんが書いたコードをあげれば誰か添削くらいはしてくれるかもよ
お前さんが書いたコードをあげれば誰か添削くらいはしてくれるかもよ
922デフォルトの名無しさん (ワッチョイ 5fab-9jjH)
2018/04/21(土) 15:33:18.46ID:WYiI1Hbl0 >>919
すいません、半角でお願いします
すいません、半角でお願いします
923デフォルトの名無しさん
2018/04/21(土) 15:45:37.64 入力部分には>>897を使わせてもらった
#include <stdio.h>
#include <string.h>
void mask_num(char *s)
{
char *c;
for (c = &s[0]; *c != '¥0'; c++)
{
if (*c > '0' && *c < '9') *c = '*';
}
}
int main()
{
char line[64];
fgets(line, sizeof(line), stdin);
strtok(line, "¥n");
mask_num(line);
printf("%s¥n", line);
return 0;
}
#include <stdio.h>
#include <string.h>
void mask_num(char *s)
{
char *c;
for (c = &s[0]; *c != '¥0'; c++)
{
if (*c > '0' && *c < '9') *c = '*';
}
}
int main()
{
char line[64];
fgets(line, sizeof(line), stdin);
strtok(line, "¥n");
mask_num(line);
printf("%s¥n", line);
return 0;
}
924デフォルトの名無しさん (ワッチョイ b3b5-qxIM)
2018/04/21(土) 15:47:16.12ID:FmyBtpFH0 プログラムのコードの話してるのに全角は無いわ。
データの話ならむしろ文字コードとかまで考えなきゃならんがな。
データの話ならむしろ文字コードとかまで考えなきゃならんがな。
925デフォルトの名無しさん
2018/04/21(土) 15:49:15.15926デフォルトの名無しさん
2018/04/21(土) 15:51:21.42927デフォルトの名無しさん (ワッチョイ 4e81-9jjH)
2018/04/21(土) 16:07:01.70ID:a/Xqi2VF0 void mask_num(char *s)
{
while (*s) {
if (isdigit(*s)) *s = '*';
s++;
}
}
{
while (*s) {
if (isdigit(*s)) *s = '*';
s++;
}
}
928デフォルトの名無しさん (ワッチョイ b39f-9jjH)
2018/04/21(土) 16:17:22.90ID:Oxipuy330 入力して変換して出力するだけでいいならこうかな。
#include <stdio.h>
#include <ctype.h>
int main()
{
int c;
while ((c = getchar()) != EOF)
if (isdigit(c))
putchar('*');
else
putchar(c);
return 0;
}
#include <stdio.h>
#include <ctype.h>
int main()
{
int c;
while ((c = getchar()) != EOF)
if (isdigit(c))
putchar('*');
else
putchar(c);
return 0;
}
929デフォルトの名無しさん (ワッチョイ 2393-MaWf)
2018/04/21(土) 17:23:05.22ID:2bKzbSLP0930デフォルトの名無しさん (ワッチョイ 9ab3-cuLp)
2018/04/21(土) 18:01:42.48ID:bgp2zzOH0 今回の発注者は>>918だから注意喚起として * じゃないの?
って確認するのは正しいけど全角半角言うならむしろ数字と言うのが半角だけでいいのかを確認した方がいいかと
下手すると 壱萬弐仟参佰四拾伍 が変換されてないじゃないかとか言われるかも知れんし
って確認するのは正しいけど全角半角言うならむしろ数字と言うのが半角だけでいいのかを確認した方がいいかと
下手すると 壱萬弐仟参佰四拾伍 が変換されてないじゃないかとか言われるかも知れんし
931デフォルトの名無しさん (スプッッ Sd5a-Incm)
2018/04/21(土) 18:05:08.78ID:uE8GRdCpd >>924
プログラムのコードの話なんてどこに書いてある?
プログラムのコードの話なんてどこに書いてある?
932デフォルトの名無しさん (ラクッペ MMcb-x+X/)
2018/04/22(日) 03:46:05.48ID:jlGSrB9uM >>930
Unicode正規化も確認しないとな
Unicode正規化も確認しないとな
933918 (ワッチョイ 5fab-9jjH)
2018/04/22(日) 06:45:30.49ID:5hVlVxZz0 すいません遅れました
添削おねがいします
#include <stdio.h>
void num_star(char *p)
{
while (*p)
if(*p >= '0' && *p <= '9')
*p++ = '*';
}
int main(void)
{
char ch[10];
printf("文字列を入力せよ\n");
scanf("&s",ch);
num_star(ch);
printf("%s\n", ch);
return 0;
}
添削おねがいします
#include <stdio.h>
void num_star(char *p)
{
while (*p)
if(*p >= '0' && *p <= '9')
*p++ = '*';
}
int main(void)
{
char ch[10];
printf("文字列を入力せよ\n");
scanf("&s",ch);
num_star(ch);
printf("%s\n", ch);
return 0;
}
934デフォルトの名無しさん (ワッチョイ b704-9jjH)
2018/04/22(日) 06:59:36.50ID:cFbiqY2T0 >>933
scanfに"&s"は間違い"%9s"だ
if(*p >= '0' && *p <= '9')は標準関数でif(isdigit(*p))とできるのに勿体ない
p++はifの条件が偽のときに実行されなくなっている
scanfに"&s"は間違い"%9s"だ
if(*p >= '0' && *p <= '9')は標準関数でif(isdigit(*p))とできるのに勿体ない
p++はifの条件が偽のときに実行されなくなっている
935デフォルトの名無しさん (ワッチョイ b39f-+Fe+)
2018/04/22(日) 13:47:43.90ID:J/MYnpG10 数字以外の文字だけ入力されたら無限ループになって終わらないね。
936デフォルトの名無しさん (スプッッ Sd5a-Incm)
2018/04/22(日) 13:59:28.07ID:1MVwzpIAdレス数が900を超えています。1000を超えると表示できなくなるよ。
ニュース
- バリ島で男子生徒ら集団万引きか、防犯カメラ映像が拡散 京都の大谷中学・高校が「窃盗行為」謝罪★4 [七波羅探題★]
- 中国軍機レーダー照射、トランプ氏沈黙突く 試される日本外交 [蚤の市★]
- 【地震】青森県で震度6強 長周期地震動も 津波注意報すべて解除 ★7 [ぐれ★] [ぐれ★]
- 【広島】「万引きした人を追跡」コンビニ店員の男性(46)を果物ナイフで刺したか 中国籍の少年(17)を殺人未遂容疑で現行犯逮捕 [ぐれ★]
- トランプ大統領 エヌビディア製AI半導体の中国輸出許可 安全保障重視の方針転換 [蚤の市★]
- 【サッカー】58歳カズ「オファーが来ている」 J3福島と近日中にも交渉 早ければ年内にも決断 [征夷大将軍★]
- 【実況】博衣こよりのえちえち朝こよ🧪
- さかまた「過呼吸になった」かなた「耳聞こえない」ござる「声出ない」まつり「ご飯食べれない」
- 【悲報】高市早苗の擬人化がXで大バズりwwwwwwwwwwww [455031798]
- くそしてかがやけ
- 🎌日本の地震をお祝いします👏👏👏✨
- お茶だと思って飲んだらションベンだった
