[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 08/05 19:06 / Filesize : 223 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

C言語なら俺に聞け(入門編)Part 95



1 名前:デフォルトの名無しさん [2012/01/13(金) 22:05:06.14 ]
C言語の*入門者*向け解説スレッドです。

★前スレ
C言語なら俺に聞け(入門編)Part 94
toro.2ch.net/test/read.cgi/tech/1324648274/
★過去スレ
makimo.to:8000/cgi-bin/search/search.cgi?q=%82b%8C%BE%8C%EA%82%C8%82%E7%89%B4%82%C9%95%B7%82%AF&andor=AND&sf=0&H=&view=table&D=tech&shw=5000
★教えて欲しいのではなく宿題を丸投げしたいだけなら
  ↓宿題スレ↓へ行ってください。
C/C++の宿題片付けます 155代目
toro.2ch.net/test/read.cgi/tech/1325685876/
★C++言語については避けてください。C++対応明記スレへどうぞ
★分からない事をなるべく詳しく書いて下さい。
★ソースコードを晒すと答えやすくなるかもしれません。
  # 抜粋/整形厳禁、コンパイラに渡したソースをそのまま貼ること
  # サイズが大きい場合は宿題スレのアップローダ等を利用してください
★開発環境や動作環境も晒すと答えが早いかもしれません。
★質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。

長くなりそうなコードはcodepadに貼り付けてもいいでしょう
codepad.org/

792 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 20:39:50.47 ]
#undef TRUE
#undef FALSE

#define TRUE 0
#define FALSE (!TRUE)

793 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 20:40:02.15 ]
((!!(a=2))==true)が絶対trueに成ればいいんだけど
そもそもCに即値trueなんて無いしな

794 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 20:40:53.55 ]
どんどんわけのわからないレスが増えていくなw

795 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 20:41:49.09 ]
>>776みたいに0と比較するのは良かったはず

796 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 20:42:29.40 ]
なぁ、自信がないならわざわざ発言しなくていいんだぞ?

797 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 20:43:06.48 ]
絶対大丈夫だよ(俺の脳内世界では)

798 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 20:43:19.44 ]
>>792
こいつ殺したくなった。コード見て殺意がわいたのは
↓これ書いた奴についで二人目だ。
#define void int

799 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 20:44:24.02 ]
通報した。

800 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 20:44:36.06 ]
昔はしょうがなかったんだよ
voidなんてハイソな予約語なんか無かった



801 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 20:45:23.72 ]
#define TRUE (1==1)
#define FALSE !TRUE

802 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 20:47:01.44 ]
正解書いとくか
#define TRUE (!0)
#define FALSE (!TRUE)

803 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 20:49:52.46 ]
正解なんてないんだよ。
何か型を導入したいならそのルール前提記述するしかない。
ルールを強制するならこれでいい。
typedef enum {
  false,
  true
} bool;

804 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 20:57:41.07 ]
!aとか!bとか書くことになるなら、a,bに入れるときに真偽値を反転させとくのがよい
a=(1==1)だったのならa=(1!=1)にする
でそのまま条件式に使えば真偽値の値がなんなのかなんて気にしなくて済む

805 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 20:59:44.13 ]
>>803
普通に整数書いてもコンパイル通るからあんまりありがたくない

806 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 21:00:07.89 ]
!aは別にいいんじゃね
個人てきにはa==0より!aのほうが分かりやすいと思う

807 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 21:01:35.73 ]
>>805
だからCならルールを強制するしかないと言ってるだろ。
defineでも同じだろ。

808 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 21:02:57.15 ]
そして僕はそっとタブを閉じた

809 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 21:31:12.05 ]
そこで私はブラウザのトップ画面をこのスレにしておいた。

810 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 22:03:47.30 ]
a==0の方がわかりやすいが、自分でコードを書くなら!aかな。



811 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 22:06:45.51 ]
!810

812 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 22:09:36.68 ]
論理値で扱うものなら!、そうでなければ==0。
それだけだろ。

813 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 22:22:54.15 ]
そのとおり

814 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 22:31:12.11 ]
C言語の仕事なんてほとんどないってほんと?

815 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 22:52:21.60 ]
組み込み系はガチC全盛なんじゃないか?
他はC++なら聞くがCってのは聞かないな


816 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 23:07:03.26 ]
組み込みでCで仕事してるよ
今のところC以外に移りそうな様子は微塵もないな

817 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 23:07:48.32 ]
ああ、でもCのコードを自動生成する方向には向かうかも

818 名前:デフォルトの名無しさん mailto:sage [2012/01/31(火) 23:26:15.60 ]
>>816
組み込みって何?
TVだと思いっきりC++だったな。

819 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 01:36:38.40 ]
「携帯電話や自動販売機などの組み込み機器(中略)
組み込みシステムのソフトウェア開発には、C言語が主に使われています」

H8で学ぶマイコン開発入門(2):組み込みソフトウェア開発はC言語が主流だ (1/3) - @IT MONOist
monoist.atmarkit.co.jp/mn/articles/0610/12/news142.html

820 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 08:16:11.14 ]
>>818
携帯もC++でやったことがある。



821 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 10:26:44.02 ]
>>818
組込みってもPICマイコンの電子工作から産業機械の制御まで幅広いからな。。。

822 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 10:53:03.24 ]
組込系おもしろそう。どこで求人してるんだ?ないよ?

823 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 11:09:21.30 ]
組み込み 求人 でググレカス

824 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 11:34:15.45 ]
結局組み込み以外、Cの使い道はないんですね。

825 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 11:45:01.82 ]
2chで世間が判った気になるなよw

826 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 11:47:10.58 ]
>>819
ちょっwww それ2006年の記事じゃんw 古っ

827 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 11:47:16.09 ]
>>824
高級言語の拡張とかにも使われる

828 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 11:52:28.64 ]
マイコン用にCで書いてるけど、
プロトタイプ無しで呼べるとか
違う型のポインタが暗黙に変換できるとか
負の資産を感じる。

classとかtemplateとか使いたい訳じゃないが
CソースもC++コンパイラでコンパイルしたい。

829 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 12:44:39.39 ]
>>828
コンパイラが使いにくいとかの理由?

830 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 12:55:16.29 ]
C++じゃなくて純Cの環境だからC++の環境でコンパイルしたいってことだろ
純Cの仕様はかなり緩いところがあるから、ミスを誘発する…と



831 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 13:00:50.75 ]
それじゃあそういうコンパイラをCとかで書けばいいじゃん
Cにこだわらなくてもいいな、lispやらperlやらでもかけるぞ


832 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 13:43:55.29 ]
gccで最も厳しいチェックをするようにして凌いでた事もあったが、最新の組み込みは複雑化してるんだろうなあ。

833 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 14:12:53.12 ]
VisualStudio でCのソースをビルドすると、入出力関数を_s付きのセキュアな関数に
置き換えることを検討しろって出るんですけど、標準入出力関数って、あぶないの?

834 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 14:15:11.72 ]
とっても。

835 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 14:17:19.17 ]
文字列用のバッファに起因する脆弱性をついたものとか結構あったじゃないか

836 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 14:26:42.38 ]
(σ・∀・)σゲッツ!!

837 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 14:28:52.87 ]
なんで標準の関数を安全にしないの?

838 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 14:29:44.43 ]
またまたまた ホモキタ━━━━━━(゚∀゚)━━━━━━ !!

839 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 14:37:32.19 ]
標準の関数を安全にしようとすると、今までのコードを変更させなければならなくなる

840 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 14:41:30.54 ]
セキュア関数は脆弱性を減らすだけだから、攻撃への対処はやはり必要。



841 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 14:43:38.68 ]
ナイフをむき出しで売ってて取り扱い注意だったのが
鞘付きのバージョンが用意された、くらいだな。
ちゃんとした使い方しないと危ないことに変わりは無い。

842 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 15:09:04.31 ]
わかったようなこと書くなw

843 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 16:50:08.80 ]
低能のたとえ話は意味不明だな。自分ではうまい事言ったつもりなんだろうな。

844 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 16:58:40.68 ]
841ではないが、意味不明ではないだろ。塚、理解力ないのか?

845 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 17:04:36.96 ]
意味が通じるのはすでにわかってる人だろう
すでにわかってるんだから意味が無い

846 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 17:08:20.21 ]
じゃあなんで脆弱な標準関数を放置してるんですか?

847 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 17:09:31.60 ]
>>846
別の言語使えや

848 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 17:11:32.51 ]
>>846
>>839

849 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 17:12:49.76 ]
C# って、(C++)++ってことなんですか?

850 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 17:55:17.44 ]
ちがうよ
++をくっつけてちょっとおしゃれに斜めに配置しただけじゃないの?
もしくは音楽で#は半音上げるだからそこからきてるなかも
だとすると++は1上がるけど#は0.5しか上がらないから
C<<<<C#<<<<<C++
つまりC++には敵いませんという意味の謙虚なネーミングだな




851 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 17:57:04.36 ]
>>846
脆弱性があるだけで使っちゃダメなわけじゃない
勝手にかえられて勝手に速度が下がるとか勘弁願いたい

852 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 18:07:13.92 ]
g++を移植する、とか

853 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 19:43:11.75 ]
ウィンドウズの旗のイメージね
■■
■■

854 名前:デフォルトの名無しさん [2012/02/01(水) 20:07:54.57 ]
C++-1+2 てとこかな、現状

855 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 20:25:42.76 ]
それはc+2になると思うが、何の話だ。

856 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 20:27:11.30 ]
もう 起動言語C+++ トリプルインクリメント とかいうアニメでも作っちゃえよ

857 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 20:29:40.46 ]
c+2はでねぇよぉ

858 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 20:42:07.14 ]
何の話だ。

859 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 21:03:15.68 ]
puts((c++-1+2 == c+2) ? ">>857 m9" : ">>854 m9");

860 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 21:20:51.19 ]
>>859
たった1行なのにバグってるとかw
C++なんだから評価後をチェックしないとアカン。



861 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 21:29:54.14 ]
不定?

862 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 21:31:19.43 ]
副作用完了点問題?

863 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 21:32:05.62 ]
バグってないよ

864 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 21:34:03.24 ]
いずれの時点でもc+2と同じ値になることはないが。

865 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 21:35:26.50 ]
>>860
こうか
a=b=c;
puts((a++-1+2 == b+2) ? ">>857 m9" : ">>854 m9");

866 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 21:48:43.57 ]
CとC++が同じという前提なんか?
C == C++


867 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 22:22:10.99 ]
Cの組み込み系はSEの中でもブラック率が高いって聞いたけど本当?

868 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 22:52:12.37 ]
まずは言った奴に聞けば?

869 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 22:53:01.30 ]
言ったやつが、いや嘘。なんて言う確率は相当低いと思うけどな。

870 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 22:55:20.26 ]
「括弧内に書いてあることは嘘です」



871 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 23:03:55.27 ]
何故なのかを、言った奴に聞けって事だろ。

872 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 23:21:41.09 ]
完全新規でCの大規模開発ってもうないんじゃね?
Cでやってる=過去の遺産を使ってる=謎設計コードを含んでる=?

873 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 23:29:05.36 ]
俺はゲハとはそういうものだと認識してるから煽りなんてどうでもいいし盛り上がる時もあるからいいだけど
嫌がるやつ多いからな

874 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 23:47:20.86 ]
恥ずかしいやつww

875 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 04:10:25.73 ]
>>873
ここ、ゲハじゃないっすよ

876 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 04:11:27.30 ]
誤爆を謝らない態度、潔し

877 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 06:55:02.65 ]
組み込み系はメーカー常駐だから偽装請負か特定派遣ということになる
結局は使い捨ての奴隷

878 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 08:54:25.32 ]
やめたげてよぉ
興味があっても趣味に留めておくのがいい

879 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 10:27:02.00 ]
>>878
趣味ならPICマイコンでアセンだな


880 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 10:28:06.21 ]
アセンって何だw
アセンブラのブラ消してたw




881 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 11:10:53.09 ]
組み込み以外でもドナドナIT。

882 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 11:18:13.43 ]
おまえらがそんなだから
大陸や半島に後れを取るんだよ

883 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 11:53:06.84 ]
>>880
ノーブラ

884 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 12:24:05.26 ]
Cというとご老人がスパゲッティ相手に悪戦苦闘するイメージだな

885 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 12:28:33.03 ]
使う人次第だな

886 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 15:22:46.33 ]
ttp://codepad.org/ZFyYfybI

このコードみたいなunionの使い方って安全?
x , y , zの間にパディングが入ることってあり得る?

887 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 15:29:50.23 ]
まぁ普通は大丈夫だろうけど、保証はないね。
#pragmaなりオプションなりそのコンパイラ固有のものを使わないと。

888 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 15:35:25.22 ]
同じものを並べてパディング入るケースってあるのか?

889 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 15:41:30.36 ]
ttp://codepad.org/vZr9h4fQ

これで勝つる

890 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 15:43:41.03 ]
>>888
80 ビットの long double とかならありそうじゃないか? 試してないけど



891 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 15:56:08.84 ]
並んでるのが同じものかどうかは関係ない
CPUの都合に合わない大きさのものに入る

892 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 16:03:08.56 ]
じゃあ例を出してみなw

893 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 17:00:59.97 ]
MIPS32だとchar a, b, c;は32bitごとになるんじゃないか?

894 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 17:05:35.60 ]
配列は例外なのか?

895 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 17:07:52.00 ]
コンパイラの実装依存だろ
どうこういっても意味なし

896 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 17:08:02.45 ]
いや、例外とかじゃなくMIPSはバイトアクセスのペナルティが大きいから
オプションによってはそうじゃなかったかなと。

897 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 17:18:13.79 ]
>>895
最初からそう言ってるんだが、>>892はそんなものは実在しないと言ってるんだ。

898 名前:デフォルトの名無しさん [2012/02/02(木) 21:01:28.93 ]
周りにプログラミングのこと聞ける人がいないので、教えてください。
最近x code4のcommand line toolを使ってC言語を学びはじめました。
今まではrunを押せば、下に色々反応(文字の表示や入力を求める表示)があったの
ですが、今日はrunを押すとfinish runningとでるだけで、下にまったく反応がありません。
そこで違うコードを入力したところ今まで通り反応がありました。
色々ネットで原因を探してみたのですが、わかりませんでした。
コードに問題があるんでしょうか?
/*postagec*/
#include <stdio.h>
void input_data(void); void calculate(void); void output_data(void);
int distance,weight,size,postage;
int main (void){
void input_data(void); void calculate(void); void output_data(void);
return 0;}
void input_data(void){
printf("距離[%dkm]重さ[%dg]を入力してください",distance,weight);
scanf("%d%d",&distance,&weight);
return;}
void calculate(void){
if(weight<=100){size=1;
}else if(weight<=1000){size=2;
}else{size=3;}
if(distance<=100){size=size+10;
}else if(distance<=1000){size=size+20;}else{size=size+30;}
return;}
void output_data(void){printf("サイズは%dです\n",size);
printf("料金は%d円です\n",postage);return;}
どなたか解決方法がわかるかた教えてください。
よろしくお願いします。長文すいません。

899 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 21:07:44.00 ]
素直にあいぽんとか叫んじゃえよ

900 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 21:16:47.23 ]
スペースが全角になってるが?



901 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 21:19:09.09 ]
何も実行されないプログラムになってますしおすし

902 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 21:22:52.46 ]
>>898
このようになおせば動くと思うよ。
int main (void){
input_data();  calculate();  output_data();
return 0;}

> コードに問題があるんでしょうか?
プログラムは書かれた通りに動く。期待通りに動かないのは
キミ自身が期待するコードをキミが書いていないからだ。

903 名前:デフォルトの名無しさん [2012/02/02(木) 21:22:53.67 ]
>900
スペースは書き込んだときに改行多すぎというエラーが
でたので改行減らすためにコードをいじったためかと・・・
x code上ではno issuesって出てます。

904 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 21:23:31.91 ]
>>898
スレ違い

Xcode part10
anago.2ch.net/test/read.cgi/mac/1319171665


905 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 21:24:04.12 ]
> printf("距離[%dkm]重さ[%dg]を入力してください",distance,weight);
ここに問題があるに1000ペリカ

906 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 21:25:05.25 ]
>>898
codepad.org/wD7XPijJ

b.c は私が書きたいように書いた。
b.c.orig は >>898 の書き方になるべく沿って書いた。

global 変数は余り使わないようにしよう。
変な癖がついて、糞野郎って思われるようになるよ。

907 名前:デフォルトの名無しさん [2012/02/02(木) 21:46:51.24 ]
>>902
902さんのいう通りにしたら動きました。
コードの内容がまだ理解できていないので、なんで動かなかったか
調べてみます。
ありがとうございました。

global変数はだめなんですか?
ニコ動の動画通りにやってたので、プログラマーの常識(?)なんかは
全然知らないので勉強になりました。
ありがとうございました。


908 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 22:08:32.44 ]
C言語の解説動画って需要あるの?
ちょっとどの動画を見たのか教えて欲しい
あと検索単語も

> global変数はだめなんですか?
使わないで書けるなら使わない方が良い。
>>898のは数十行だからそこまで問題ないけど、

global変数の値の書き換えってどこでもできちゃうから、
数百行や数千行になってくると、
bugの温床となりやすい。
どこか〜〜_init()関数だけでglobal変数の設定をして
他の場所ではglobal変数の参照だけする。
とかならいいんだけど、なかなかうまくいかないんだ。

特に初心者のうちは使わない方が吉。

909 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 22:12:44.41 ]
C言語って初心者向けじゃない気がするんだよな

910 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 22:14:51.48 ]
>>898

書き方が汚かったので、多分書き方を知らないんだと思う。
Pythonのなんだけど、これを参考にして書くといいよ。

以下だけは、
タブは4個の空白に等しいとする。
って読み替えて。

PEP 7 -- Style Guide for C Code:
www-acc.kek.jp/WWW-ACC-exp/KEKB/control/Activity/Python/doc-j/pep-0007-J.html

ソースプログラムの配置

- Use single-tab indents, where a tab is worth 8 spaces.
- ソースのインデントには、タブ一つを使う。タブは八個の空白に等しいとする。



911 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 22:52:10.79 ]
スレ違いもいい加減にしろよ。

912 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 23:00:44.01 ]
???

913 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 23:30:57.29 ]
>>911自体が誤爆なんでしょ
高度な技を出しやがって

914 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 23:42:19.21 ]
C/C++の宿題スレの誤爆と思われる

915 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 03:13:14.55 ]
>>910
タブの使用未使用については特に問わないが、
タブは8タブ、インデントは4カラムがいいな。

916 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 03:36:48.87 ]
>>915
私はタブ使わない派です。
インデントは空白4つでやってます。

タブを8空白として使ったことないので、
空白4つ派です。。。

最後に。
タブって昔々KB辺りの単価が高かった頃、
1文字でインデントを表現するために必要だった文字なんだと思います。
今後は廃れてなくなっていくんじゃないかなー?
と思っていたりします。

917 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 03:41:38.80 ]
何をわけのわからないことを言ってるんだお前は。

918 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 03:42:46.31 ]
こういうスレって基本的にageないんですか?
そうだとするとなぜですか?

919 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 03:54:16.45 ]
韓国が貿易赤字に転落

韓国の知識経済省が1日発表した1月の貿易統計によると、輸出から輸入を差し引いた貿易収支は、19億5700万ドル(約1490億円)の赤字となった。
また輸出額も415億3700万ドルと前年同月比で6・6%減少した。

同省では、長引く欧州の財政危機と原油価格上昇の影響だとしている。
www.yomiuri.co.jp/world/news/20120201-OYT1T01150.htm

920 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 03:57:58.10 ]
専ブラが自動的にメル欄にsageって入れてくれるから
>>918はwebブラウザで2chしてるの?



921 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 04:03:12.00 ]
>>916
8空白として使うとかじゃなくて、タブの幅は8文字分を想定してほしいという話だよ。
で、インデントサイズを4とした場合に、1段なら4つの空白、2段分は8個の空白でもタブ1つでもいいよってだけ

922 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 04:16:58.10 ]
>>921
ああ、なーるほど。
変に読んじゃってましたね。失礼しました。

923 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 04:24:25.82 ]
>>922
補足しておくと、viの設定だとこう
set sts=4 sw=4 ts=8

ただ、書かれてるとおり、今はタブを使わないってのが主流かも。

924 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 04:29:33.86 ]
今時viかよ。

925 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 04:45:44.30 ]
>>920
設定でどうにでもなるだろ情弱

926 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 04:48:41.25 ]
viで何が悪いんだよ。
IDEとか使いづらいだろjk。

set expandtab
set shiftwidth=4
set ts=4

私はこんな感じ。

927 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 04:49:39.93 ]
>>925
なーんかトゲトゲしいですね。
困ったチャンですね。
もう寝ましょう。

928 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 05:16:23.84 ]
せめてemacs使えよ。

929 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 05:27:59.14 ]
emacs使う人ってやっぱGNUのインデントスタイルに慣れてるの?

930 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 05:28:55.16 ]
いや、おれはstroustrupに設定してるが。



931 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 05:39:41.70 ]
RMSよりスッポスッポの方がすきか

932 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 05:42:10.12 ]
stroustrupスタイルって
char* p; も含む?

933 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 05:43:23.45 ]
>>932
c-modeという意味では含まない。

934 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 05:44:27.86 ]
じゃあ完全にstroustrupの書き方をまねるわけではないんだ。アリガトン

935 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 05:47:14.25 ]
あぁ、主にインデンテーションだからね。
おれの設定はこの程度。
(setq tab-width 4)
(setq c-indent-level 4)
(setq c-continued-statement-offset 4)
(setq c-argdecl-indent 4)
(setq c-label-offset -4)
(setq indent-tabs-mode nil)

936 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 05:49:18.69 ]
emacs使いじゃないから雰囲気でしか設定見れないけど、ハードタブを4カラムに設定してんのかなぁ

937 名前:デフォルトの名無しさん mailto:さげ [2012/02/03(金) 05:54:50.76 ]
(setq indent-tabs-mode nil)
がいわゆるハードタブってのを使わない設定だね。

938 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 06:00:18.19 ]
あぁ、タブコードはtab-widthで4やね。
2/4/8で切り替えられるようにしてるから別にきにしてないけど。

939 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 06:00:50.21 ]
重ね重ねどうもです

940 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 06:17:23.93 ]
急に伸びるから何かと思ったら。。。
下らない



941 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 06:28:27.78 ]
Emacsは何度も挑戦したが
どうやってもMetaが押しづらくて挫折する

942 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 06:50:41.16 ]
vim一択

943 名前: ◆QZaw55cn4c mailto:sage [2012/02/03(金) 06:53:01.15 ]
>>941
altキーに換えられない?

944 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 07:36:40.05 ]
>>943
替えるまでもなくデフォルトでAltにマップされてない?
でも押しづらい
無変換に変えても大差ない
CapsLockってのも抵抗がある
端末上ならEmacsバインドでも構わないけど
エディタとしては出番多すぎてつらすぎ

945 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 07:50:18.55 ]
>>944
親指で押せばそうでもないと思うが、キーボード次第かも

Emacsに限らずviとかもだけど、昔のエディタって
キーボードによって結構能率に差が出る印象がある

因みに俺はMacではvi派、WindowsではEmacs派
Linuxはむしろ使うエディタにキーマップ合わせに行くw

946 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 07:57:35.30 ]
Metaキーは使ったことないな。Escで代用してる。

947 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 08:02:02.28 ]
HHKBとかならまだしも、
Escは押しづらい位置にあることが多い気がする

948 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 08:05:01.88 ]
もちろん日本語KBなら漢字キーてやつと入れ替えてるよ。
CAPS⇔CTRLとESC⇔漢字で、あとはASCII配列に変更して使ってる。
最近は英語キーボードがなかなか手にはいらないので。

949 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 08:06:44.51 ]
お前らいい加減にスレタイ読め

950 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 08:08:32.24 ]
まぁいつものこと。



951 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 08:18:35.25 ]
NICOLA配列だから
左親指に割り当ててる

同時押しいつもやってることだし

952 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 08:27:22.04 ]
Metaキーの位置に悩むそんなあなたにC-[。
問題は結局Ctrlの位置なんだよね。

まあ自分のコンピュータならキーバインドをカスタマイズすればいいんだろうけど、
ちょっと触るだけの環境とかでそういうのを使うわけにもいかず。

953 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 09:44:10.41 ]
プログラミング以外だと生き生きする奴が多いのはデフォ。

954 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 10:09:22.95 ]
viは環境変わっても使えるから、慣れておくといい

955 名前:デフォルトの名無しさん [2012/02/03(金) 10:35:36.47 ]
汎用的関数化が他の機能に与える影響ってなに?

956 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 12:22:30.01 ]
>vi
大学で3年間「使いにくいー!!誰だこんな仕様考えたやつは!!」
と思ってたけど会社入っても結局これ一本だった。

957 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 12:54:42.67 ]
俺viになれすぎちゃってみんなが普通に使ってるエディタが使いにくい…
最初に必ずソースにjjjjjjjjjjjjjjjjjとかタイプするのはお約束w

958 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 13:32:13.32 ]
jjjjjjjjjjjjって操作をするのはvi初心者、とツッコミを入れられるのもお約束

959 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 14:05:26.28 ]
jjjjjjjjjjjjjjjjj > @さんにごあいさつにきますた

960 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 14:51:00.16 ]
C言語で小町算のプログラムつくってくれませんか?><
課題なのに一向にできません;;



961 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 14:52:14.79 ]
総当たりにすればいいだろ。

962 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 15:32:25.14 ]
いくら出すんだ?

963 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 15:40:36.24 ]
>>960
ググれ

964 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 15:42:22.25 ]
>>960
小町算っていってもローカルルールとかいろいろあるからちゃんと定義書いてくれないとこっちも困るよ

965 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 15:55:19.16 ]
perlで文字列でやって
それそのままevalしたほうがラクじゃん
perlじゃなくても、文字列が評価できるならなんでもいいけどさ

cなんて使うかよアフォ


966 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 18:10:43.60 ]
>965
あっそ。

967 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 18:22:13.59 ]
emacs最強

968 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 19:07:16.79 ]
vim最強

969 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 19:10:01.78 ]
秀丸エディタ
さくらエディタ
WZEditor
terapad

この辺使ってるやつは大体厨
大抵エクスプローラの表示を"詳細"にしてないし
デスクトップのテーマをクラシック設定にしてないくせにPCが重いとかほざく

970 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 19:17:37.35 ]
vi使うやつってのはいかにしてキータッチを最小にするかを常に考えてるやつのこと。
逆にそれを考えてないやつにはvi使ってるという資格はないよね。



971 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 19:19:04.70 ]
そんなにキータッチ減らしたいならiPad使えよ。情弱野郎。

972 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 19:19:55.80 ]
WordMaster→MIFES→emacs
うーん、思い出せない。ほかに何か使ってたかなぁ...

973 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 19:21:17.90 ]
>>971
それはvi使いに言え。

974 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 19:22:24.83 ]
自分VisualStudioで書いてますし

975 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 19:23:32.01 ]
最小のキータッチを考えているうちはまだまだ
指が勝手に動いて気付いたらプログラムが完成してるようにならないと

976 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 19:25:23.36 ]
脳波読取で電気信号直接入力の時代がくるよ
キーボードというスタイルは近いうちに無くなる

977 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 19:25:35.72 ]
まぁその域に達してるのはそういないと思うが、>>970は必要条件な。

978 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 19:29:00.82 ]
>>974
VSでも外部エディタは基本だな。

979 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 19:30:18.19 ]
IDE標準のエディタを使ってるやつは才能ないから死ぬべき

980 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 19:34:16.05 ]
IDEと言われるとHDDが真っ先に思い浮かぶんで統合環境と言ってくれ。



981 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 19:45:29.19 ]
い〜で

982 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 19:54:21.17 ]
>>980
SASIには反応しない?

983 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 20:05:38.91 ]
>>973
すぐ上のvi使いに言ったんだが。

984 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 20:32:28.17 ]
>>983
そいつはvi使いじゃないってことだろ。

985 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 20:33:07.08 ]
>>982
SASIに別の意味があるのか?

986 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 20:33:18.55 ]
>>978
外部エディタって補完きくの?

987 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 20:33:41.01 ]
>>986
それは外部エディタ次第だろ。

988 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 20:35:52.90 ]
さすがにC#とかJavaの既存クラスライブラリのメンバ関数を使うときはIDE標準のエディタで補完使った方がいいだろ

989 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 20:37:07.71 ]
vi .vs. emacs みたいな話題のときに、viを軽いから設定ファイルの編集に使うとか、どこでも使えるから
使い方を覚えるとか、消極的な理由を挙げてる奴は中立を装った否定派だから信用すんなよ。

990 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 20:38:48.85 ]
>>987
外部エディタが独自に補完機能をもってれば使えるってことか。
弱そうだな。



991 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 20:56:04.17 ]
IDEの標準エディタの操作をvimに変更するプラグインがあったはず

992 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 20:57:40.78 ]
>>990
そうだな、お前の頭が。

993 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 21:01:33.23 ]
>>992
外部エディタでもVSと同じレベルの補完が使えるってこと?
外部エディタの欠点を指摘されたような気になって煽ってるだけ?
って聞いても、頭弱そうだからまともな答えは返ってこなさそう。

994 名前: ◆QZaw55cn4c mailto:sage [2012/02/03(金) 21:07:29.76 ]
>>952
>自分のコンピュータならキーバインドをカスタマイズすれば
きょうも上司に小言をいわれました。

「お前のPCのキーボードは変態」

自分でもなにがなんだかわからない‥‥‥。

995 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 21:09:22.61 ]
capslockをctrlにしてない奴は例外なくクズ

996 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 21:09:32.15 ]
韓国の国家ブランドの順位

サムスン経済研究所が2日発表した各国の国家ブランド価値によると、韓国は50カ国のうち実態は15位で、
イメージでは19位の順位だったことが明らかになった。複数の韓国メディアが相次いで報道した。

2011年11月4日から1週間、世界の26カ国・地域のオピニオンリーダー1万3500人を対象に行ったアンケート調査の結果に基づいて算出された。

イメージの順位では日本がトップとなり、ドイツ、アメリカ、カナダが続いた。

韓国メディアは「周辺国からの認識は変わっていない」「広報戦略を強化すべき」などと相次いで伝えている。

news.searchina.ne.jp/disp.cgi?y=2012&d=0203&f=national_0203_153.shtml


997 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 21:13:13.87 ]
>>993
すまん、そこまで弱いとは思ってなかったわ、お前の頭が。

998 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 21:16:55.43 ]
こいう煽りしかこないってことは、やっぱ外部エディタじゃ補完は弱いってことだろうな。
それで外部エディタが基本とか人に薦めてるのか。
普通にVS使ったほうがましか。

999 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 21:19:26.82 ]
エディタを使えないやつはそれでいいんじゃねーの?

1000 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 21:23:40.11 ]
>>999
いやviは大好き。
もしVSでviのキーアサインを再現できたらそれ使う。



1001 名前:1001 [Over 1000 Thread]
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<223KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef