トップページ⇒tech
1001コメント233KB

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

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん2010/09/26(日) 17:36:51
C言語の*入門者*向け解説スレッドです。
★前スレ
C言語なら俺に聞け(入門編)Part 69
http://hibari.2ch.net/test/read.cgi/tech/1284477697/
★過去スレ
http://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++の宿題片付けます 140代目
http://hibari.2ch.net/test/read.cgi/tech/1284632294/
★C++言語については避けてください。C++対応明記スレへどうぞ
★分からない事をなるべく詳しく書いて下さい。
★ソースコードを晒すと答えやすくなるかもしれません。
  # 抜粋/整形厳禁、コンパイラに渡したソースをそのまま貼ること
  # サイズが大きい場合は宿題スレのアップローダ等を利用してください
★開発環境や動作環境も晒すと答えが早いかもしれません。
★質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。
0002デフォルトの名無しさん2010/09/26(日) 17:39:40
                     __
                ,,r‐''"~~´:::::::::::::゙~''''‐-、,
              ,,r''´::::::::::::::::::::::::::::::::::::::::::::::::::゙丶、
            /:::::::::::::::::::::::::::::,r、::::::::::::::::::::::::::::::::\
           / ......::::::::::::ィ::::::::// ヽ:::::ト、::::::::::::::::........ヽ
           /:::::::::::,r::::::/ |:::::/ /  ゙、::l ヽ:::::::::、::::::::::::::゙、
           /:::::::::::/i::::/,,,,l:::/ /   ヽト‐-、:::::|',::::::::::::::::i
          i::::::i:::::/'|::/  |/  /     !  ヽ::|ヽ:::::i:::::::::l
         l:::::::|:::/ .i/              ヽ:| ゙、::::i:::::::::|
           |:::::::|/                 ゙'! ヽ,!:::::::::|
         |::::::;;;;i -‐''''''"""~~     ~~"""゙'''''''''‐ |;;;;::::::::|
          |::::::;;;;;|                        |;;;;:::::::::|
        |::::::::;;;;l                    l;;;;:::::::::|
         |:::::::;;;;;|                       |;;;;::::::::|
     _,,,r-┴、::;;;;ヽ、                   ノ;;;:::::-‐-、
    / 、  、 ヽヽ-,;;;゙ヽ、      ヽフ       ,,,イr/´/ ,r  ゙'ヽ、 聞いてやーー
 ̄ ̄\,,,ヽ、,,i、,,,i、ノ' ̄ ゙゙̄'''‐- ...,,,,,,,,,,,,,,,,,,.... -‐'''~  ̄(,,しL,/,,,r'~,,,-‐' ̄ ̄
0003デフォルトの名無しさん2010/09/26(日) 18:13:47
VC++でC99を使う方法おしえて
0004デフォルトの名無しさん2010/09/26(日) 18:18:54
VCにもいろいろあるでよ
0005デフォルトの名無しさん2010/09/26(日) 18:20:34
wikipediaごときだと↓みたいになってる。
http://ja.wikipedia.org/wiki/Microsoft_Visual_C%2B%2B
...Visual C++のコンパイラは、C, C++, C++/CLIのソースコードを入力に受け付ける。C言語規格に関しては、Visual C++ 9.0 (2008) SP1の時点でANSI C89 (ISO C90, ISO/IEC 9899:1990) 対応[1]であり、C99には対応していない。...
0006デフォルトの名無しさん2010/09/26(日) 18:22:28
>>5
そこをなんとか対応できませんか?
0007デフォルトの名無しさん2010/09/26(日) 18:23:48
おバカさんですか?バージョン聞かれてないかい?
0008デフォルトの名無しさん2010/09/26(日) 18:27:02
>>7
すいませんでした
VC++ 2010 Express使ってます
0009デフォルトの名無しさん2010/09/26(日) 18:30:50
こんなことかいてるところがあるね
ttp://d.hatena.ne.jp/crimsonwoods/20090911/1252597456
0010デフォルトの名無しさん2010/09/26(日) 18:31:01
C99がCのスタンダードになることは永遠にない
0011デフォルトの名無しさん2010/09/26(日) 18:31:48
VC++はC++専用、もっと言えばWindowsアプリ専用と考えた方がいいよ。
CコンパイラとしてはC95にもC99にも対応してない古臭い仕様だから。
0012デフォルトの名無しさん2010/09/26(日) 18:33:32
C99対応だと何が嬉しいの
0013デフォルトの名無しさん2010/09/26(日) 18:33:33
そうなんですか?CをコンパイルするときはBCCのほうがいいでしょうか?
0014デフォルトの名無しさん2010/09/26(日) 18:36:45
BCCはもっと古いが、まあ準拠度で言えばC89だからVC++と同等ではある。
0015デフォルトの名無しさん2010/09/26(日) 18:41:23
あした学校の授業でプログラミングあるのでC89あるか先生に聞いてみます
0016デフォルトの名無しさん2010/09/26(日) 18:54:33
BCCって今でも無料版あるの?
0017デフォルトの名無しさん2010/09/26(日) 18:59:10
http://blogs.msdn.com/somasegar/archive/2008/11/21/c-enhancements-in-vs-2010.aspx
こっちのコメント欄でのやりとりでも、
C99欲しいって声はあんまりないからやらないんだって言っているね。
0018デフォルトの名無しさん2010/09/26(日) 18:59:26
今は私立の小学校でもプログラミングの授業があるらしいな
0019デフォルトの名無しさん2010/09/26(日) 19:01:05
プログラミングの仕事がしたいんですけど未経験で30歳はキツイですか?
0020デフォルトの名無しさん2010/09/26(日) 19:02:59
26以上は実務経験ないとキツイっていうか無理
0021デフォルトの名無しさん2010/09/26(日) 19:16:26
まあ会社によるけど厳しいよね
今の仕事があるなら無理に転職する必要はない
0022デフォルトの名無しさん2010/09/26(日) 19:35:55
暗号化はこっち

■暗号技術【ROUNDsurea】■
http://hibari.2ch.net/test/read.cgi/tech/1180280982/
0023デフォルトの名無しさん2010/09/26(日) 20:28:47
てすと
0024デフォルトの名無しさん2010/09/26(日) 20:41:58
暗号は今一つ盛り上がりに欠ける
0025デフォルトの名無しさん2010/09/26(日) 20:47:56
暗号に限らずアルゴリズム関連のスレは既存のものを使ってればいいだけだから
今更議論することも少ない
0026デフォルトの名無しさん2010/09/26(日) 21:01:19
新型は要らない!という話?
0027デフォルトの名無しさん2010/09/26(日) 21:08:46
いや新型は欲しい、
既存型の複製を作ってもなあ・・・って話

車輪の再発明は学習には必要だけども、
他人にとっては今更って思うから盛り上がりに欠ける
0028デフォルトの名無しさん2010/09/26(日) 21:13:08
暗号化ならとりあえずカメリア使っとけ
0029デフォルトの名無しさん2010/09/26(日) 21:18:06
わざわざNTTに特許料払うのか?
0030デフォルトの名無しさん2010/09/26(日) 21:18:57
Code Based Cryptographyがいい!
0031デフォルトの名無しさん2010/09/26(日) 21:45:06
ひゅ〜ひゅ〜
0032デフォルトの名無しさん2010/09/26(日) 21:46:21
vc++限定の話です。
#pragma intrinsicっていうプリプロセッサ指令あるじゃないですか?

これって数学の関数の処理を最適化して高速化するもんですよね?
たとえば、sin,cos,atan2を高速化したければ、

#pragma intrinsic(sin,cos,atan2)ってかけばOKなんですか?
0033デフォルトの名無しさん2010/09/26(日) 21:59:08
>>24
まともにレスできる者の絶対数が少ないのと
2ちゃんで発言するかどうかの関門でまた厳しいふるいがあるからな
0034デフォルトの名無しさん2010/09/26(日) 21:59:09
>>32
>>1
0035デフォルトの名無しさん2010/09/26(日) 22:04:10
C の「高級アセンブラ」としての使命が問われている、根本的な問題だと思うが
0036デフォルトの名無しさん2010/09/26(日) 22:04:40
>>33
暗号化技術そのものは秘密でもなんでもないわけだから
べつに2ちゃんで話そうが駅のホームやスターバックスで話そうがどうってことないはず。
つまりはまさに暗号についてわかってる奴が少ないって事だろうね。
0037デフォルトの名無しさん2010/09/26(日) 22:06:18
>>32

>>1
>★C++言語については避けてください。C++対応明記スレへどうぞ
0038デフォルトの名無しさん2010/09/26(日) 22:13:46
>>36
理想論に異を唱えるつもりはないが
スターバックス怖いぞ
0039デフォルトの名無しさん2010/09/26(日) 22:15:25
オリジナル暗号実装してて速度でGPGに勝ったんだけど、OpenSSLに負けてる。
0040デフォルトの名無しさん2010/09/26(日) 22:19:09
問題は強度だ
0041デフォルトの名無しさん2010/09/26(日) 22:25:35
早いより硬いほうが女性も喜ぶよね
0042デフォルトの名無しさん2010/09/26(日) 22:40:43
勝ち負けを論じることができるレベルのアルゴリズムでも実装でもなかった。
0043デフォルトの名無しさん2010/09/26(日) 22:44:47
>>38,39←ほらね、こういう暗号とはどういうものなのかという初歩を知らない奴はこういうリアクション。
2ちゃんのプログラムスレでもこのレベルだからまぁ、発展的な話なんて無理と言えば無理。
0044デフォルトの名無しさん2010/09/26(日) 22:46:27
ニヨニヨ
0045デフォルトの名無しさん2010/09/26(日) 22:49:54
>>38
暗号化のアルゴリズムってのは本来、秘密にするべきものではなく
世界中の暗号学者にそのアルゴリズムの詳細仕様をメールで送っても
ゴールデンタイムのTV放送で全国ネット、世界中継で読み上げてもおkなもんなのだよ。
そうやってアルゴリズムを誰もが知っていてもなお、
解読するのに実質不可能と思えるくらいの時間を要するものを
使用に耐えうる暗号と言う。
0046デフォルトの名無しさん2010/09/26(日) 22:58:49
俺の理解では鍵交換した後は対称鍵で暗号化するもんだと思ってた。
gpgにせよopensslにせよその暗号化アルゴリズムは強度と速度から適切なものを選択
するものであり、どのアルゴリズムをどう使ったか含めて言わないあたり院生ってのも
ちょっと怪しいなと思った。
0047デフォルトの名無しさん2010/09/26(日) 23:03:51
ぶっちゃけさJavaでアンドロイドアプリ開発したいんすよ
てゆーかiphoneがObjective-Cで開発みたいな?
だから初めての言語はC#かJavaかCどれを学習したらいいんですか?
ぶっちゃけトークでよろしく!
0048デフォルトの名無しさん2010/09/26(日) 23:04:04
>>45
ケルクホフスの原理は必須ってわけでもない
そうあるべきって主張があるだけ

現代においてもなお、クローズドな仕様・実装のほうが
より機密性が高くなるとする立場は存在する
典型例がNSAで、国家機密に使われる非公開暗号を用意しているらしいし
0049デフォルトの名無しさん2010/09/26(日) 23:05:09
>>47
アンドロイドはJAVAでいいでしょ
0050デフォルトの名無しさん2010/09/26(日) 23:06:06
>>47
Javaでアンドロイドアプリ開発したいんなら、Javaだろう
他の言語を学習する理由がどこにある
0051デフォルトの名無しさん2010/09/26(日) 23:08:16
おれまだ中1なんっすよ
やっぱり初めの言語は大事かなって思ってるわけっすよ
0052デフォルトの名無しさん2010/09/26(日) 23:08:59
中一だと順番違うの?
0053デフォルトの名無しさん2010/09/26(日) 23:13:49
黒客には陽と陰がいてそれは
自らの発見で名声を欲しがる者と
自らの発見そのものに満足する者がいる

暗号論において怖いのは後者だということは論を待つまい
0054デフォルトの名無しさん2010/09/26(日) 23:15:00
>中一

なか はじめ
?
0055デフォルトの名無しさん2010/09/26(日) 23:16:05
プログラミングの最初なんてfor とか 変数 とか 関数が理解できればどれも大して変わらないだろ。
俺はjavascriptから入ったから型が最初は無かった。そういや、JSやる前に授業でRやったけど、
さっぱり身につかなかったな。目標持って自発的にやれよ。
0056デフォルトの名無しさん2010/09/26(日) 23:32:57
も
き
ゅ
〜
0057デフォルトの名無しさん2010/09/26(日) 23:52:36
同じバイナリが違う環境で動作するときにアラインメントの取り方だけが違うっていう場合はあるの?
0058デフォルトの名無しさん2010/09/26(日) 23:55:55
ないって保証が悪魔の証明なんだよ
0059デフォルトの名無しさん2010/09/27(月) 00:00:11
ほっ
ほっ
0060デフォルトの名無しさん2010/09/27(月) 01:35:11
300Mのファイルの読み書きだけで16秒もかかるんですが、OpenSSL
は暗号化の処理を入れても10秒位しかかかりません。
どうすればファイルIOを早く出来ますか?
0061デフォルトの名無しさん2010/09/27(月) 01:37:28
もういい加減消えろ
0062デフォルトの名無しさん2010/09/27(月) 01:47:41
つメモリマップドファイル
0063デフォルトの名無しさん2010/09/27(月) 09:23:43
while((read_size=fread(buff,1,SIZE,fq)))を
while((read_size=fread(buff,4,SIZE,fq)))とするとファイルの4分の1
しか書き込めません。なぜですか?
0064デフォルトの名無しさん2010/09/27(月) 09:31:05
>>63
fread()の戻り値は、第2パラメータで指定した単位で何個読み取れたか。
つまり、実際に読めたのは(戻り値*第2パラメータ)[bytes]になる。
0065デフォルトの名無しさん2010/09/27(月) 09:53:41
>>63
そもそも読み込みしかしてないだろ
0066デフォルトの名無しさん2010/09/27(月) 10:02:03
fwriteの書き込みバイト数が1のままだった。4バイトにすれば早く
なるかと思ったけどならなかった。
0067デフォルトの名無しさん2010/09/27(月) 10:09:51
OpenSSL調べてるけど、特別なこと何もしてないみたいだし・・・
何であんなに早いの?
0068デフォルトの名無しさん2010/09/27(月) 10:11:57
コツは、ファイルサイズを取得する関数でターゲットとなるファイルのサイズを取得し、
バッファのリミット定数と比較し、OKならファイルサイズ分がばっと一括で読んじゃうのが一番速い方法。
これならHDDへの読込みアクセスが一回で済む
内容を分割したけりゃその後に分割(こうすればメモリ上のアクセスなので数段速い)
0069デフォルトの名無しさん2010/09/27(月) 10:13:00
具体的なソースがほしいです
0070デフォルトの名無しさん2010/09/27(月) 10:13:44
>>69
甘ったれんな
0071デフォルトの名無しさん2010/09/27(月) 10:20:58
バッファサイズと読み込み時間って関係あるんですか?
増やしてもあまり変わらなかったです。
0072デフォルトの名無しさん2010/09/27(月) 10:28:47
ディスクアクセスを何回行なうか、が時間に大きく関わってくるとは思わね?
1回と10000回ディスクアクセスするんだととっちの方が時間がかかる?
0073デフォルトの名無しさん2010/09/27(月) 10:29:37
頭でコード書いてるバカはほっとけ
0074デフォルトの名無しさん2010/09/27(月) 11:05:17
またずいぶんレベルが下がったな。
前スレでは読み込みのブロッキング中に別スレッドで回せということだったと思うんだが。
0075デフォルトの名無しさん2010/09/27(月) 11:05:29
女は子宮で書くのよ
0076デフォルトの名無しさん2010/09/27(月) 11:05:38
高速化に拘るのは結構だが、せめてスレタイ読んでから書き込もうな。
高速化/効率化は明らかにスレ違いな話題だし、ここで聞いても有意な回答は望めないよ。
0077デフォルトの名無しさん2010/09/27(月) 11:16:46
>読み込みのブロッキング中に別スレッドで回せ

それもうC++の領域じゃね?
Cの仕様そのものがもう時代遅れで300MBなんてファイルを読み込むことを想定していないわけだし。
0078デフォルトの名無しさん2010/09/27(月) 11:31:47
ファイルサイズの取得

MFC CFileFindクラス
.net FileInfoクラスのLengthプロパティ
0079デフォルトの名無しさん2010/09/27(月) 12:03:17
つまり、C++は標準規約でスレッドに対応してると、そう仰りたいわけか。
0080デフォルトの名無しさん2010/09/27(月) 12:10:40
いいえ
0081デフォルトの名無しさん2010/09/27(月) 12:29:02
>>74
Cで別スレッドで回すってどうやんの?
0082デフォルトの名無しさん2010/09/27(月) 12:31:41
timidityやtmidi95やgrooveみたいにソフトウェアでMIDIエミュレートするにはどうやるんですか?難しいですか?
0083デフォルトの名無しさん2010/09/27(月) 12:34:08
>>81
質問者がcygwinと言っているのだから、pthreadでも使えばいいんじゃない?
0084デフォルトの名無しさん2010/09/27(月) 12:38:04
>>83
でも結局、数バイトづつ読むとなると、読み終わるまで親は待たないといけなくなるよね、という矛盾
0085デフォルトの名無しさん2010/09/27(月) 12:48:21
ふっほっはっ
0086デフォルトの名無しさん2010/09/27(月) 12:50:28
>>82
MIDIで指定された音階で、指定された楽器の音を
指定された強さで鳴らすだけ。楽器の音データは
楽器の音を録音して使用する。
同時に複数音を出さなくて良いなら、
プログラムとしては大変ではない。

データを用意するのが大変なのと、
実用的なスピードで音の合成するのが大変。
0087デフォルトの名無しさん2010/09/27(月) 12:52:47
>>82
んっひっ
0088デフォルトの名無しさん2010/09/27(月) 13:46:48
で?300MBのファイルを高速で読むにはどうすんの?>>83
0089デフォルトの名無しさん2010/09/27(月) 13:50:29
別スレッドにしてもファイル読み終わるまで親スレッドが待つことになるだけでちっとも速くならないよー。
0090デフォルトの名無しさん2010/09/27(月) 13:54:12
>>86
けっこうたいへんあんんですね
ソフトシンセサイザーで一発ぼろ儲けをしてる人はハッカー
0091デフォルトの名無しさん2010/09/27(月) 14:04:29
>>87
けっこうたいへんあんんですね
ソフトシンセサイザーで一発ぼろ儲けをしてる人はハッカー
0092デフォルトの名無しさん2010/09/27(月) 14:18:31
>>88
けっこうたいへんあんんですね
ソフトシンセサイザーで一発ぼろ儲けをしてる人はハッカー
0093デフォルトの名無しさん2010/09/27(月) 15:08:18
ソフト側は素直に普通に作っとけ。
アクセスを早くとか、そういうのはハード側に求めるべきだ。
0094デフォルトの名無しさん2010/09/27(月) 15:19:46
>>88>>89
前スレを全くみていないのね。
スレッドを使うと読み込みを速くできるなんて一言も言っていない。
読み込みのブロッキング中に別スレッドで暗号化できるという話をしている。

が、質問主はマルチスレッドが大変と分かったらしく、
とにかく読み込み時間を速くすることに絞ったようですな。
0095デフォルトの名無しさん2010/09/27(月) 16:19:41
ttp://sky.geocities.jp/tcshacina/hash.c
だから私を見て!
0096デフォルトの名無しさん2010/09/27(月) 16:45:44
>>95
ttp://codepad.org/gc4mHHuC
私のことも見て!


シングルスレッド
$ time ./a.exe -s DATA.bin S.bin
real 0m35.030s
user 0m19.155s
sys 0m0.624s

マルチスレッド
$ time ./a.exe -m DATA.bin M.bin
real 0m25.098s
user 0m18.906s
sys 0m0.562s

データは100MBのものを使用した。
注意:読み込みが速いわけではない。
ブロッキング中に別の処理をしているだけ。

昔遊んでたコードを元に適当に組んだ。
ちゃんとconditionとか使えばもっといい感じになると思う。
0097デフォルトの名無しさん2010/09/27(月) 17:01:33
これはC言語?何してるのかよくわからない・・・
因みにバッファのサイズを262144にしたら最高速度になった。
$ time ./perm 3 3.perm

real 0m12.137s
user 0m0.015s
sys 0m0.016s

$ time ./perm 3 3.perm
real 0m6.006s
user 0m0.000s
sys 0m0.046s

かなりOpenSSLの性能に近づいた感じ。(気のせい)
0098デフォルトの名無しさん2010/09/27(月) 17:15:07
こんな凄い事出来るのにプロじゃないなんて・・・
0099デフォルトの名無しさん2010/09/27(月) 17:49:23
>>96
対して速くなってないね。

>>97
つまり>>68,72っぽい方法だってことだよね。
それが正解
0100デフォルトの名無しさん2010/09/27(月) 18:11:27
>>96みたいな唯我独尊・自画自賛プログラマってほんと、プログラマなんてやめちゃえばいいのに。
どうせろくでもないコード乱造してるくせに「仕様です」とか言い張って改善する能力もない、世界のダニ。
0101デフォルトの名無しさん2010/09/27(月) 18:28:29
setbuf使って、システムコールの回数を減らしてみるとか
0102デフォルトの名無しさん2010/09/27(月) 18:29:30
setbufferのほうだった
0103デフォルトの名無しさん2010/09/27(月) 18:38:14
>>101
フリーズしたようになる?
0104デフォルトの名無しさん2010/09/27(月) 18:44:16
聞く前にまず自分で試行しろ
0105デフォルトの名無しさん2010/09/27(月) 19:45:39
汗みたけど
for(i=0;i<16;i++)
u.m[i]=buff[i+k*16];
毎回、コピーしてるここがネックじゃないかな?
0106デフォルトの名無しさん2010/09/27(月) 19:48:44
ぬっほっ
0107デフォルトの名無しさん2010/09/27(月) 20:52:39
どうすればいい?
0108デフォルトの名無しさん2010/09/27(月) 20:54:04
暗号くんの嫌いなポインタを使うんだよ
0109デフォルトの名無しさん2010/09/27(月) 20:55:29
キャストでやる手もあるかな
0110デフォルトの名無しさん2010/09/27(月) 20:55:47
早くなるの?
0111デフォルトの名無しさん2010/09/27(月) 20:57:26
どう考えてもディスクから読み込む必要ないよな
聞いてるやつも教えてるやつも同一人物としか思えなくなった
0112デフォルトの名無しさん2010/09/27(月) 20:58:18
SSE2命令でループをベクトル処理してくれる機能があるんだけど、
それよりも効果がありますか?
0113デフォルトの名無しさん2010/09/27(月) 21:00:01
ひっふっ
0114デフォルトの名無しさん2010/09/27(月) 21:00:10
別人です
0115デフォルトの名無しさん2010/09/27(月) 21:06:03
書き方が悪くて、128ビットアクセスになってないみたいだからね
0116デフォルトの名無しさん2010/09/27(月) 21:07:17
今日はもう寝るので明日までに解決しといてください
0117デフォルトの名無しさん2010/09/27(月) 21:16:11
もうこいつに反応するやつは同一人物でいいよ。俺含めて。
0118デフォルトの名無しさん2010/09/27(月) 21:26:43
昔のベーシックみたいな書き方してるからかな、反応しちゃうのは
0119デフォルトの名無しさん2010/09/27(月) 21:31:48
いいですよ
0120デフォルトの名無しさん2010/09/27(月) 21:32:41
工業高生なんだが
10 main()
20 {
30 printf("ハジメマシテ\n");
40 }
こんな行番号まで入れてポケコンで頑張ってるんだけど
今のところこんなことしかできないんだけどどこから頑張ればいいの?
0121デフォルトの名無しさん2010/09/27(月) 21:34:14
嘘つきには教えない
0122デフォルトの名無しさん2010/09/27(月) 21:34:31
ポケコンだと派手なコトできないから
数値計算系のやつでもがんばってみたら?
0123デフォルトの名無しさん2010/09/27(月) 21:34:40
すいません、intも一応使えます。
0124デフォルトの名無しさん2010/09/27(月) 21:35:31
工業高生ねえ。。。
0125デフォルトの名無しさん2010/09/27(月) 21:35:50
連レスすまぬ。
>>122了解したぜよ!あとifとか覚えて情報技術3級狙ってくる!
0126デフォルトの名無しさん2010/09/27(月) 21:43:53
情報技術って情報技術検定のこと?
あれ、1級以外だとジュニアマイスターの点数稼ぎにも使えないから
受ける意味はあまりないと思う
0127デフォルトの名無しさん2010/09/27(月) 21:46:16
>>126
部活でとあるソーラーカーレースやらその他いろいろにでてるんだが
それにでるだけでジュニアマイスターの点数がたまって危険物取扱をとるだけで
シルバーか何かになれるんだ、ごめん。
0128デフォルトの名無しさん2010/09/27(月) 21:46:51
>>120
SHARPのPCG-850とか?
懐かしいなおい。
0129デフォルトの名無しさん2010/09/27(月) 21:50:16
てかポケコンって今でも売ってるのか。
0130デフォルトの名無しさん2010/09/27(月) 21:59:37
>>127
別表2、3に参加だけでOKってやつなかった気がするんだが
0131デフォルトの名無しさん2010/09/27(月) 22:21:06
>>130
一応、成績はある程度残さないと高い得点は入らないんだけどね。
ただ、そういう先輩もいただけだから自分は無理かな。
>>128
.SHARP PC-G850VS
処理速度が速くなったせいで処理速度固定させないと
持ってる雑誌のゲームとかできないんだよね。
0132デフォルトの名無しさん2010/09/27(月) 23:09:14
>情報技術検定
受験料安すぎと思ったら高校生向け試験なのね
オラクルマスター受けたいけどxマソは学生にゃ高すぎる・・・
0133デフォルトの名無しさん2010/09/27(月) 23:12:33
自演注意
0134デフォルトの名無しさん2010/09/27(月) 23:16:11
基本情報も応用情報も5000円だろ
01357912010/09/27(月) 23:17:17
自演
0136デフォルトの名無しさん2010/09/27(月) 23:21:02
>>134
それは情報技術"者"検定
0137デフォルトの名無しさん2010/09/27(月) 23:24:47
>>134
情報技術検定 != 情報処理技術者試験
基本応用とったからベンダー資格にも手をだそうかと思案中
0138デフォルトの名無しさん2010/09/27(月) 23:25:57
高速なファイルアクセスの書き方も知らんようなヘボどもが
0139デフォルトの名無しさん2010/09/27(月) 23:32:03
>>136>>137
知ってるけど
0140デフォルトの名無しさん2010/09/27(月) 23:37:56
分かってねえだろks
0141デフォルトの名無しさん2010/09/27(月) 23:44:08
>>132が情報技術検定は安いとか、オラクルは高いとか言ってるから
それなら基本や応用を受ければいいと言ってるだけ
0142472010/09/27(月) 23:45:01
ども47です
俺的にはさ、とりあえず自分の好きに使えるPCが今ないからさ
お金貯めて買ってからJavaやりたいみたいな
つーことで報告乙りにきた
0143デフォルトの名無しさん2010/09/27(月) 23:55:02
>>141
基本や応用は金にならない&就職に使えない
オラクルは金になる&就職に使える

だいたい、工業高校の学生なら
基本、応用の2つぐらい普通に持ってるだろ
0144デフォルトの名無しさん2010/09/28(火) 00:01:23
それは誤解だよ
0145デフォルトの名無しさん2010/09/28(火) 00:06:29
>>143
ダウト
0146デフォルトの名無しさん2010/09/28(火) 00:08:32
>>144
応用って前のソフト開発のことだろ?
俺の出身高校だとほとんどのやつが持ってたぞ
0147デフォルトの名無しさん2010/09/28(火) 00:08:57
#include "hoge.h" と #include <hoge.h> はどう違うんですか。
0148デフォルトの名無しさん2010/09/28(火) 00:10:46
うちの会社はどんな資格取っても手当なんか一切出ないぜ!
基本とソフ開とテクネとテクデとテクエンベとテクセキュ持ってるけどオラクルもシスコも無い俺は世間一般ではどのくらいの価値があるんだろうか
0149デフォルトの名無しさん2010/09/28(火) 00:11:05
>>146
簡単なのに合格率が低いのは工業高校の奴らが落ちまくってるからだろ
0150デフォルトの名無しさん2010/09/28(火) 00:11:30
応用 = 旧ソフ開 + マネジメント + ストラテジ
範囲は広がっている
0151デフォルトの名無しさん2010/09/28(火) 00:12:03
>>147
"hoge.h" はカレントディレクトリを探して、なければインクルードパスを探す
<hoge.h> はインクルードパスだけを探す
0152デフォルトの名無しさん2010/09/28(火) 00:13:08
第ゼロ印象に影響はある
だが、その後に化けの皮が剥がれると詐欺呼ばわりで
人事部の人も始めからそれが頭にある

使えない奴がポイされるのは資格云々のせいじゃなく本人の中身
仮に実力があっても悪用されるとこれまた危険極まりないしな
0153デフォルトの名無しさん2010/09/28(火) 00:13:12
まあね
0154デフォルトの名無しさん2010/09/28(火) 00:13:12
>>147
ヘッダーファイルの検索の仕方が違う
0155デフォルトの名無しさん2010/09/28(火) 00:26:52
暗号くんへ
#if 1
{
on *dd;
dd = &buff[k*16];
u = *dd;
}
#else
for(i=0;i<16;i++)
u.m[i]=buff[i+k*16];
#endif
8ビット毎のコピーが32ビット毎のコピーになったぐらい
s5関数にも似たこと出来るとこがあったな
早くなったかは微妙
0156デフォルトの名無しさん2010/09/28(火) 00:33:54
OpenMPかTBB使いなされ
0157デフォルトの名無しさん2010/09/28(火) 00:36:25
300MBをごっそり1回でHDDからメモリに読むってどうやんの?
0158デフォルトの名無しさん2010/09/28(火) 00:38:42
freadで出来るでしょ
0159デフォルトの名無しさん2010/09/28(火) 00:38:48
300メガのリニアメモリ確保してfreadで300メガ読み込む
こうですか
0160デフォルトの名無しさん2010/09/28(火) 00:40:14
ファイルを1回でHDDから読んじまって後の操作はメモリ上だけでやった方が圧倒的に早くね?
0161デフォルトの名無しさん2010/09/28(火) 00:41:57
ファイルサイズ調べて、読み込む
0162デフォルトの名無しさん2010/09/28(火) 00:42:46
読む前に空きメモリサイズも調べとくこと
0163デフォルトの名無しさん2010/09/28(火) 01:03:03
読み込んだデータを暗号化すれば、コピーの回数が減るけど
暗号君の腕じゃ、動かなくなりそう
0164デフォルトの名無しさん2010/09/28(火) 01:05:59
>>149
会場にたどり着けない職業プログラマが多いからだよ。
0165デフォルトの名無しさん2010/09/28(火) 01:21:08
欠席はたしかに多いが統計資料では欠席を除いた合格率が出てる
0166デフォルトの名無しさん2010/09/28(火) 01:27:57
会場に行くのがそんなに大変なのか?
まるでハンター試験だな・・・
0167デフォルトの名無しさん2010/09/28(火) 02:23:12
暗号くんへ
{
on *dd;
dd = &buff[k*16];
for(i=0;i<4;i++){
c1.cc[i]=((c1.cc[i]+dd->cc[i])&f2)^c1.cc[(i+1)&0x3];
c2.cc[i]=((c2.cc[i]+dd->cc[i])&f2)^c2.cc[(i+1)&0x3];
}
}
コピーをなくしてみた。
s5の入り口と出口のコピー処理の影響が大きいみたいだよ。計4回やってるからね。
0168デフォルトの名無しさん2010/09/28(火) 02:46:08
暗号くんへ
s5で
cc->H->GGとコピーして、Hを使ってないじゃないか
0169デフォルトの名無しさん2010/09/28(火) 03:00:53
やっぱり、無駄なコピーがネックになってる
0170デフォルトの名無しさん2010/09/28(火) 03:18:31
勘違いしてたとこがあったけど、
for(i=0;i<16;i++)
GG.m[a[i]]=H.m[i];
ここの処理が重いみたいだ
0171暗号2010/09/28(火) 05:22:25
ttp://sky.geocities.jp/tcshacina/grs.c
この処理も何とかしてください。
20秒もかかります。高速化よろしくお願いします。
ご指摘の結果2秒位改善しました。無駄な処理があったんですね。
on *ddのコンパイル時に以下の警告が出ます。
0172暗号2010/09/28(火) 05:25:34
warning C4133 '=' : unsigned char * と 'on *'の間で型に互換性
がありません。
0173デフォルトの名無しさん2010/09/28(火) 07:36:45
病院に帰れ
0174暗号2010/09/28(火) 07:43:40
これって高速化出来ないですか?ポインタで。
でもポインタの使い方わかりません。
unsigned char *buf[32],buff[SIZE];

for(i=0;i<32;i++)
buf[i]=buff[i+32*k];

こんな感じで。
buf= &buff[32*k];
0175デフォルトの名無しさん2010/09/28(火) 08:05:12
>>174
出来ますよ。こんな感じで。
memcpy(buf, &buff[32*k], 32);
0176暗号2010/09/28(火) 08:13:12
bufからbuffにデータを戻す場合はどうすればいいですか?
for(i=0;i<32;i++)
buff[i+k*32]=buf[i];
0177暗号2010/09/28(火) 08:16:17
さらにこれは?

for(i=0;i<16;i++){
buf[i]^=d1[i];
buf[i+16]^=d2[i];
}
0178デフォルトの名無しさん2010/09/28(火) 09:32:41
高速化する価値がない。以上。
0179デフォルトの名無しさん2010/09/28(火) 10:17:04
昔のベーシックみたいな書き方しかわかんないみたいだから
とりあえず、入門書を読み直すところからはじめたら
答えを聞くばっかりじゃなく、自分で考えないと
0180デフォルトの名無しさん2010/09/28(火) 10:23:59
そろそろ専用スレ立ててくれ。いい加減鬱陶しい。
0181元経験者2010/09/28(火) 11:40:45
TURBO Cプログラミング入門という参考書は非常にタメになる。
こんなスレで聞くより一度読んでみたほうが良いよ。
0182デフォルトの名無しさん2010/09/28(火) 12:26:29
暗号化の簡単な例を教えてください。
0183デフォルトの名無しさん2010/09/28(火) 12:29:41
aをbに変換
bをcに変換

helloを暗号化するとifmmpになる
01841832010/09/28(火) 12:30:39
続き
ifmmpをbase64でエンコード
エンコードした文字列もなんかの文字に変換
そして更にエンコード
そして更に(ry
0185デフォルトの名無しさん2010/09/28(火) 12:47:41
自分なりに勉強してたつもりなんですが、今読むならどんな本がいいのでしょうね。
fread/fwriteでこんなに性能が変わるなんて知りませんでした。
環境によってスピードが変わるんでしょうか。キャッシュの性能を除いた
単一のベンチマークとかの性能比較の方法はあるのでしょうか。
プログラムはポインタとかドレスとか出てくるともうわかりません。
わかる範囲でプログラムしてます。目標はオリジナル暗号ソフトです。
0186デフォルトの名無しさん2010/09/28(火) 12:49:18
>プログラムはポインタとかドレスとか出てくるともうわかりません。

性能とか言ってる場合かよ
0187デフォルトの名無しさん2010/09/28(火) 12:55:10
ストリーム暗号は簡単ですよ。乱数を発生させてXORするだけ。
問題は周期が短くならないようにすること。統計的な分布も重要。
最近ではブロック暗号でAESが標準になってる。ブロック暗号からも
ストリーム暗号は作れますが、今目指してるのはストリーム暗号の方。
0188デフォルトの名無しさん2010/09/28(火) 13:08:53
>fread/fwriteでこんなに性能が変わるなんて知りませんでした。
>プログラムはポインタとかドレスとか出てくるともうわかりません。

Cやる気ないなら暗号スレ行けよ…

■暗号技術【ROUNDsurea】■
http://hibari.2ch.net/test/read.cgi/tech/1180280982/
0189デフォルトの名無しさん2010/09/28(火) 13:12:43
暗号アルゴリズムの開発じゃなくて、実装だからここでいいだろ。
Cが分らんと言ってる奴を暗号技術に誘導すんな。
0190デフォルトの名無しさん2010/09/28(火) 13:13:01
>>185
>目標はオリジナル暗号ソフトです。

いや、だから、まず概念としての暗号の基礎を学べよ。
そうすりゃオリジナル暗号なんてどんだけバカげたことかわかるから。
0191デフォルトの名無しさん2010/09/28(火) 13:13:50
Cやる気あります。参考書知ってたら教えてください。
300Mを6秒で処理できるようになりました。
0192デフォルトの名無しさん2010/09/28(火) 13:16:35
>>189
開発しようとしてね?
0193デフォルトの名無しさん2010/09/28(火) 13:21:41
なんだたったの6秒かしょぼいな
0194デフォルトの名無しさん2010/09/28(火) 13:24:16
暗号は大学院で研究してました。楕円曲線とか誤り訂正符号を使った
暗号とか。でもまだ一度も自分で作ったアプリがないので挑戦して
いるところなのです。広く使われているアルゴリズムでないと意味が
ないかもしれないですが、とりあえずいいのです。
開発環境はCygwinのGCCとvisual Studio 2010ですがコマンドライン
だと使い方がわからなくなりそうなのでVC++みたいにウインドウズ
ソフトにしようかと考えてます。
0195デフォルトの名無しさん2010/09/28(火) 13:26:36
もともと20秒かかってました。
0196デフォルトの名無しさん2010/09/28(火) 13:28:06
ソース見ますか?
0197デフォルトの名無しさん2010/09/28(火) 13:30:58
暗号のできる中学生くらいなのかとおもってた。
0198デフォルトの名無しさん2010/09/28(火) 13:39:30
6秒ってのはキャッシュのせいかもしれない。
0199デフォルトの名無しさん2010/09/28(火) 13:44:09
ひとつアドバイスさせてもらうと、今の段階でいたずらに高速化を目指すより
アルゴリズム上の無駄を推敲して正しい設計、正しい実装を目指した方がいいと思うぞ。
その方が結果的に速度が上がるように思う。

参考書
「UNIXという考え方―その設計思想と哲学 」
出版社: オーム社 (2001/02)
ISBN-10: 4274064069
ISBN-13: 978-4274064067
0200デフォルトの名無しさん2010/09/28(火) 13:50:26
すいませんやっぱりソースはお見せできません。
0201デフォルトの名無しさん2010/09/28(火) 13:54:29
アルゴリズムの基本構造は有限体上の行列演算です。
Goppa符号のシンドロームをOFBモードでフィードバックさせて
乱数を発生させます。安全性を実験的に確認している途中です。
演算が論理演算しか使わない単純なものなのに思ったほど速度が
出なかったのが気になりました。
0202デフォルトの名無しさん2010/09/28(火) 13:56:02
>>201
コードの書き方だろJK
0203デフォルトの名無しさん2010/09/28(火) 13:57:16
安全性を検証するのに速度は関係ないだろう
速度なんか気にしてるといつまでも検証の方が進まないぞ
やるべきことをやれよ
0204デフォルトの名無しさん2010/09/28(火) 14:08:15
>>201
暗号化アルゴリズムとコーディング(のアルゴリズム)を混同していると思われ
0205デフォルトの名無しさん2010/09/28(火) 14:19:10
ポインタも使ってねーで速度でないとか、笑う
0206デフォルトの名無しさん2010/09/28(火) 15:24:46
プログラムをビルドした日時をプログラム内で取得したいんだけど
格好いい方法ありますか?
0207デフォルトの名無しさん2010/09/28(火) 15:25:32
な
い
0208デフォルトの名無しさん2010/09/28(火) 15:31:31
$ cat foo.c
const char * BuildDate = BUILD_DATE;

$ gcc -S foo.c -DBUILD_DATE='"'"`date`"'"'

$ cat foo.s
.file "foo.c"
.section .rdata,"dr"
LC0:
.ascii "Tue Sep 28 15:31:02 2010\0"
.globl _BuildDate
.data
.align 4
_BuildDate:
.long LC0
0209デフォルトの名無しさん2010/09/28(火) 15:32:28
格好よくはないな
0210デフォルトの名無しさん2010/09/28(火) 15:32:39
__DATE__と __FILE__じゃだめなのか?
0211デフォルトの名無しさん2010/09/28(火) 15:33:22
__FILE__じゃねえ__TIME__だよ
0212デフォルトの名無しさん2010/09/28(火) 16:46:22
行列の要素の入れ替えで質問です。
G[16][16][2]という行列があったとき、

*temp=G[0][2][0]
G[0][2][0]=G[9][5][0]
G[9][5][0]=*temp

で要素の入れ替えは出来ますか?
0213デフォルトの名無しさん2010/09/28(火) 16:49:55
「temp」だけでできるとエスパー
0214デフォルトの名無しさん2010/09/28(火) 16:50:01
Gとtempの型次第。
0215デフォルトの名無しさん2010/09/28(火) 16:57:00
tempが有効なポインタを指していなければアウト
0216デフォルトの名無しさん2010/09/28(火) 17:02:43
じかにやる方法しかわかりません。

temp[0]=G[0][2][0];
temp[1]=G[0][2][1];
G[0][2][0]=G[9][5][0];
G[0][2][1]=G[9][5][1];
G[9][5][0]=temp[0];
G[9][5][1]=temp[1];

何かいい方法があったら教えてください。
0217デフォルトの名無しさん2010/09/28(火) 17:11:17
いやだから「G」と「temp」の型を書けっての
0218デフォルトの名無しさん2010/09/28(火) 17:16:11
unsigned long long int です。
0219デフォルトの名無しさん2010/09/28(火) 17:17:51
unsigned long long int G;
unsigned long long int temp;
だというのか?なわけないだろ
0220デフォルトの名無しさん2010/09/28(火) 17:20:04
行単位、列単位でコピーしたいってことだろ
0221デフォルトの名無しさん2010/09/28(火) 17:24:28
そうです。

unsigned long long int G[16][16][2],temp[2];

ポインタが使えると思うのですがよくわかりません。
0222デフォルトの名無しさん2010/09/28(火) 17:34:12
>>216みたいに直にやるか、ループで回すか、memcpy使うか
0223デフォルトの名無しさん2010/09/28(火) 17:35:51
一番早い方法が知りたいです。
0224デフォルトの名無しさん2010/09/28(火) 17:36:45
swap 関数作ってインライン指定だけでいいだろ
0225デフォルトの名無しさん2010/09/28(火) 17:38:46
memcpy()使うほどのサイズじゃないし、>216で充分だよ。
C++ならstd::swapを使えって話になるけどCだから作るまでもない。
0226デフォルトの名無しさん2010/09/28(火) 17:42:39
void swapUnsigndLongLong2(unsigned long long * a, unsigned long long * b)
{
struct {unsigned long long x, y;} tmp;
tmp.x = a[0];
tmp.y = a[1];
a[0] = b[0];
a[1] = b[1];
b[0] = tmp.x;
b[1] = tmp.y;
}
swap(& G[0][2], & G[9][5]);
0227デフォルトの名無しさん2010/09/28(火) 17:45:53
// さっきはstaticを付け忘れたけど、今時のコンパイラならstaticをつけておけばinline展開してくれるし
// 他のソースに悪影響を及ぼさないためにもつけたほうがいい。
static void swapUnsigndLongLong2(unsigned long long * a, unsigned long long * b)
{
// c89だとエラーが出るからその場合は>226で
struct {unsigned long long x, y;} tmp = {a[0], a[1]};
a[0] = b[0];
a[1] = b[1];
b[0] = tmp.x;
b[1] = tmp.y;
}
// ついでに関数名も間違えてやんのw
swapUnsignedLongLong2(& G[0][2], & G[9][5]);
0228デフォルトの名無しさん2010/09/28(火) 17:55:50
じかにやってみます。
0229デフォルトの名無しさん2010/09/28(火) 18:33:34
途中までの書き直したソース貼ってくれれば更にアドバイスしやすいかも
0230デフォルトの名無しさん2010/09/28(火) 18:45:13
[0]を何度もコピーしてるのが無駄ね
0231デフォルトの名無しさん2010/09/28(火) 18:50:16
誰のソースですか?
0232デフォルトの名無しさん2010/09/28(火) 19:08:17
ストリーム暗号の周期を測定しようとしたらすごいバグが見つかった!
直して今のところ2^32までの周期はない事がわかったのですがどの位
なら安全といえますか?
0233デフォルトの名無しさん2010/09/28(火) 19:10:20
>>232
10^39
0234デフォルトの名無しさん2010/09/28(火) 19:14:17
実験的な確かめ方がわかりません。2^128位ですか。
どなたかアドバイスお願いします。
0235デフォルトの名無しさん2010/09/28(火) 19:17:06
?
0236デフォルトの名無しさん2010/09/28(火) 19:17:18
??
0237デフォルトの名無しさん2010/09/28(火) 19:19:00
とりあえず暗号野郎はトリ付けろ
0238デフォルトの名無しさん2010/09/28(火) 19:23:33
>>234
周期のあるのは予想可能性という点で問題あるので暗号には使えない。
0239デフォルトの名無しさん2010/09/28(火) 19:26:52
実験では実際に計算させて周期がないかどうかをしらべています。
しかし大きな周期は無理なので確認方法がわかる人がいたらお願いします。
計算量的な安全性は証明できても実装した場合に安全かどうかは別なので。
0240デフォルトの名無しさん2010/09/28(火) 19:30:01
>>239
ほんとに知りたいの?
この人に直接問い合わせりゃいいじゃん。

【数学】円周率5兆ケタまで計算 パソコンを百数十万円かけて自作/長野の会社員
http://toki.2ch.net/test/read.cgi/scienceplus/1283004092/
0241デフォルトの名無しさん2010/09/28(火) 19:38:51
メルセンヌツイスターは安全じゃないんですか?
0242デフォルトの名無しさん2010/09/28(火) 19:46:00
MTは暗号学的には安全じゃないので
暗号に使うなら暗号学的に安全な別なの使ってね、
って公式にアナウンスされとるがな
0243デフォルトの名無しさん2010/09/28(火) 19:46:21
>>239
一周期回らせようとしたら膨大なデータをやりとりしない限り無理じゃないの
0244デフォルトの名無しさん2010/09/28(火) 19:50:51
>>243
はいはい、基礎がわかってないやつはすっこんでろや
0245デフォルトの名無しさん2010/09/28(火) 19:56:47
>>241
2,3桁見たらもう次は予測可能じゃん、暗号学的には。
0246デフォルトの名無しさん2010/09/28(火) 19:59:49
実計算で確認するのは無理だと思います。
アルゴリズム的に周期がない事を証明しないといけないかもしれません。
ブロック暗号のOFBモードに似ているのでそういう方法で安全性を
保障するのかもしれません。OFBモードでも周期はあるはずなんですけどもね。
0247デフォルトの名無しさん2010/09/28(火) 20:03:11
計算量的には次ビット予測不可能性っていいますね。
公開鍵暗号の場合ですけど。鍵をかませれば出力から単純には
次の値がわからなくすることができると思います。
0248デフォルトの名無しさん2010/09/28(火) 20:04:39
>>246
乱数発生させたいならカウンタ値をハッシュしてもいいじゃね?
その代わり種となるカウンタ値はばれたら大変。
0249デフォルトの名無しさん2010/09/28(火) 20:05:24
値の出現確率が一様になるようにダミーを混ぜる
乱数でスワップを繰り返してシャッフル
実はこれだけで完全な暗号になる
0250デフォルトの名無しさん2010/09/28(火) 20:09:41
統計的テストでは一様分布になってます。バイト単位の出現率ですが。
CTRモードのことですかね>カウンタ
0251デフォルトの名無しさん2010/09/28(火) 20:15:03
でも結局突きつめてくとAESとかRSAの劣化コピーみたいなアルゴリズムに落ち着くんだよね。
で、結局、既存のアルゴリズムがどんだけよく考えられているかを知る、と。
0252デフォルトの名無しさん2010/09/28(火) 20:23:29
一応数論とは違う問題に基づいてはいるんですが。新型暗号
0253デフォルトの名無しさん2010/09/28(火) 20:26:42
ポインタすら分からない奴がスレチもほどほどにしろよ
0254デフォルトの名無しさん2010/09/28(火) 20:29:38
>>252
新たな暗号アルゴリズムを作りたいのか?
プログラムのコーディングが上達したいのか?

新たな暗号アルゴリズムを作りたいのならこのスレの住人じゃ検証する力もないし、話の内容がそもそもスレ違い。
それに実証コードを書きたいなら自分でやらずともコーディングのプロに頼めばいい(OpenSSHのメンバーなど)
プログラムのコーディングが上達したいのなら暗号のことは一旦脇に置いてコーディングの勉強をするべき。
0255デフォルトの名無しさん2010/09/28(火) 20:30:35
暗号数学とプログラムはへつもんだから互いにいちゃモンつけてもしゃあないでしょ。
0256デフォルトの名無しさん2010/09/28(火) 20:33:21
新型を質の良いプログラムで実装したいです。
資金がないのでプロには頼めません。
コーディングの勉強をします。
0257デフォルトの名無しさん2010/09/28(火) 20:41:55
>>256
バカなの?
質の悪い手製の新型暗号を、たとえ質のいい実装したってクズはクズだろ。
ゴミをきれいなラッピングでプレゼント包装するようなもんだ。

ホントに手製の新型暗号に自信があるなら論文でも書いて学会に送りなよ。
どんだけ強力な暗号なのか世界中の数学者、暗号学者が検証してくれるから。
実装はその暗号の有用性が実証された後で充分。
有効な暗号だと認定されりゃ、世界のだれかオープンソースの住人(実装の達人)が実装してくれるよ、タダで。
もしくは企業が権利を買い上げてくれるかもな。


結局、「新型暗号」なんて適当なこと言って、
スレをひっかきまわしたいだけだろ?
0258デフォルトの名無しさん2010/09/28(火) 20:46:43
研究段階なら質が悪かろうがとりあえず動けば良いんだよ
質の良いプログラムとか考えるのは後の話
0259デフォルトの名無しさん2010/09/28(火) 20:47:42
>>257
おいおい、暗号さんの才能に嫉妬すんなよw
0260デフォルトの名無しさん2010/09/28(火) 20:50:23
アルゴリズムが完成してるなら、それがプロにも解読出来ないか検証すればいい。今使われてる暗号のように。
プログラムに使おうとすんな
0261デフォルトの名無しさん2010/09/28(火) 21:00:11
趣味で実装してんじゃないの?
そんなにピリピリする必要はないだろうに
0262デフォルトの名無しさん2010/09/28(火) 21:00:32
入れ食い状態の釣り堀か、それとも自分で餌撒いて自分で食い付いてんのか
0263デフォルトの名無しさん2010/09/28(火) 21:07:58
趣味ですw
もう寝ます
0264デフォルトの名無しさん2010/09/28(火) 21:08:58
C使ってるのにデータをレジストリに使う奴は情弱
0265デフォルトの名無しさん2010/09/28(火) 21:14:54
ぷぷ
0266デフォルトの名無しさん2010/09/28(火) 21:37:05
>>264
巣に戻れ
0267デフォルトの名無しさん2010/09/28(火) 21:48:57
いいよ
0268デフォルトの名無しさん2010/09/28(火) 23:11:43
>>258
研究段階(暗号の)ならプログラムで実際に動かす必要なんてないけどな。
0269デフォルトの名無しさん2010/09/28(火) 23:23:04
それはない
0270デフォルトの名無しさん2010/09/28(火) 23:25:33
何のスレだっけ?思い出せ低脳。
0271デフォルトの名無しさん2010/09/28(火) 23:29:24
僕高脳。
0272デフォルトの名無しさん2010/09/28(火) 23:46:53
experimentは一応必要じゃないの
0273デフォルトの名無しさん2010/09/28(火) 23:48:26
lain
0274デフォルトの名無しさん2010/09/28(火) 23:48:46
違うなw
0275デフォルトの名無しさん2010/09/28(火) 23:50:33
int main(void)
{
0276デフォルトの名無しさん2010/09/28(火) 23:53:11
ん?
0277デフォルトの名無しさん2010/09/28(火) 23:54:46
return 0;
}
0278デフォルトの名無しさん2010/09/28(火) 23:55:50
return -1;
0279デフォルトの名無しさん2010/09/29(水) 01:04:12
エラーがでるらしいよ
0280デフォルトの名無しさん2010/09/29(水) 01:05:57
エラーが出るなら仕方ない
0281デフォルトの名無しさん2010/09/29(水) 01:55:52
ここでffmpegの質問してよいですか?
0282デフォルトの名無しさん2010/09/29(水) 02:07:54
いいえ
0283デフォルトの名無しさん2010/09/29(水) 03:19:18
メモリクリーナーみたいにタスクマネージャで表示されるメモリにゴミがあったら開放するやり方ってどうすればいい?
calloc失敗するまで読み込んで失敗したら終了したら一応はその動作するけど外道だし

int *p;
while (1) {
p = calloc
失敗したらbreak
}

これだとexe終了処理で開放されてるけどfreeしてないし
freeするにしてもwhileの中でやったら無限ループになるし
外でやっても最後のpしかfreeされないしで思いつかない

int i, count, **p
*p = calloc
while (1) {
p = calloc
失敗したらbreak
count++;
}
for(i=0;i<count;i++) {
free(p)
}
free(*p)

こんな感じに出来ない?
0284デフォルトの名無しさん2010/09/29(水) 03:25:15
ひどすぎる
0285デフォルトの名無しさん2010/09/29(水) 04:12:23
p[0]を確保してp[0][count]を確保
p[0][i]を開放してp[0]を開放って感じか?
0286デフォルトの名無しさん2010/09/29(水) 04:29:15
ソースコードで発見した奇妙なコメント集
http://www.webcreatorbox.com/webinfo/comments-source-code/
0287デフォルトの名無しさん2010/09/29(水) 06:24:16
以下のコードを実行するとiが66を超えたところで、lにマイナスの値が代入されるのはなぜですか?

int i = 0;
for (; i <= 100; i++) {
long l = i * 33000000;
LOGI("i=%d l=%d", i, l);
}
0288デフォルトの名無しさん2010/09/29(水) 06:34:58
>>287
オーバーフロー
32bit環境ではlongは4Byte(-2147483648〜2147483647)
0289デフォルトの名無しさん2010/09/29(水) 06:37:46
オーバーフローが疑わしい

log2(65 * 33000000) ≒ 30.998
log2(66 * 33000000) ≒ 31.020
0290デフォルトの名無しさん2010/09/29(水) 08:12:24
C言語の本で

配列内の文字は、終端ナル文字の直前まで出力される、精度が指定されない
場合や、精度が配列の大きさより大きい場合、配列は必ずナル文字を含んで
なければならない。
 ↑
とあるけどこれの意味がわかりません・・どういうことですか?
0291デフォルトの名無しさん2010/09/29(水) 08:13:40
指定の精度が配列より小さい場合、ナル文字は含まなくてもいいのですか?
ナル文字0はかならず終端に容量をとって含まれるものでしょう?
0292デフォルトの名無しさん2010/09/29(水) 08:26:14
>>290
それはprintf()系の話だと思うが、説明がやや的外れだと思う。
例えばフォーマット指定で%.10sなどとした場合、10バイトを超えて出力されることがないことが保証されているに過ぎない。
従って、通常は必ずナルターミネートされていないといけない。
0293デフォルトの名無しさん2010/09/29(水) 08:42:44
// まぁ、こういうことだ。
char buf[] = "abcdefghijklmn";
printf("%s\n", buf);
// 10バイトしか出力されない(%10sとの違いに注意)
printf("%.10s\n", buf):
// 長さはナル文字を含まないが、配列のサイズには含まれる。
printf("%u, %u\n", (unsigned) strlen(buf), (unsigned) sizeof(buf));
0294デフォルトの名無しさん2010/09/29(水) 08:59:30
ところでおまいらプリプロセッサなに使ってる?
stdio.h使ってるんだけどそろそろ変えようかなって思ってるんだよね。
あれ?プリプロセスだっけ
まぁなんでめいいや
0295デフォルトの名無しさん2010/09/29(水) 09:03:49
Visual Studioの最適化オプションって何が一番いいですか?
0296デフォルトの名無しさん2010/09/29(水) 09:07:15
>>294
邪道は入門篇の対象外です。

>>295
VisualStudioのスレへどうぞ。
0297デフォルトの名無しさん2010/09/29(水) 09:19:04
>>292
C言語の入門書読んでるけど3Pに一か所くらい、どういう意味?って
感じの説明があるんだが・・・
0298デフォルトの名無しさん2010/09/29(水) 09:20:47
>>292
ナルは必ず要領を食うってことですか?
0299デフォルトの名無しさん2010/09/29(水) 10:52:17
>>297
その塵本は捨てて、別な本を買った方がよい。
0300デフォルトの名無しさん2010/09/29(水) 11:34:53
クラス内の関数ポインタの動的確保ってどうするの?
例えば
int (A::*test)();
っていう関数ポインタがあったとして、こいつを動的確保する方法です。

newに渡しても、コンパイルエラーになったり、
typedefしようとしても、戻り値の後ろの空白のせいでコンパイルエラーになったり
してしまいます。

正しいtypedefと動的確保について教えてください。
0301デフォルトの名無しさん2010/09/29(水) 12:31:14
いやまて何を動的確保する気だよwwww

typedefは普通に
typedef int (A::*test)();
だが
0302デフォルトの名無しさん2010/09/29(水) 12:35:19
>>300,301
消えろ
0303デフォルトの名無しさん2010/09/29(水) 12:40:06
>>301
ありがとうございます。
途中で関数ポインタの配列を用意しないといけない状況になってるんですが、
動的確保できないんですかねぇ。
0304デフォルトの名無しさん2010/09/29(水) 12:52:08
>>292
strncpy() の指示数と被代入変数の器の大きさとか?

上限5文字で切りたい場合 器は \0 を含めて 6個必要
(strncpyでは、さらに上限いっぱいの場合には 明示的に \0 代入が欲しい)

char buf[6];
strncpy(buf, 5, "123456789abcd");
→
 buf[0] = '1'
 buf[1] = '2'
 buf[2] = '3'
 buf[3] = '4'
 buf[4] = '5'
 buf[5] = <不定>
0305デフォルトの名無しさん2010/09/29(水) 12:53:25
不定(笑)
0306デフォルトの名無しさん2010/09/29(水) 12:58:52
>>302
ごめんCスレだと気付かなかった
これで終わると思うので勘弁してください
次は最初から誘導しようと思います

>>303
ならそういえ
typedef int (A::*test)();
test *p2 = new test[10];
0307デフォルトの名無しさん2010/09/29(水) 13:06:40
>>306
ありがとうございます!出来ました!
C++スレ別にあったんですね。次からは気をつけます!
0308デフォルトの名無しさん2010/09/29(水) 13:29:19
>>306
なんでこのスレで答えるの?
死ねば!
0309デフォルトの名無しさん2010/09/29(水) 13:34:31
CとC++スレの区別もつかないヤツって、コード書いててもミスばっかりなんだろうな
0310デフォルトの名無しさん2010/09/29(水) 13:43:12
GCCとVisualStudioでアセンブラのソースを見たんですが、小さい方が
早いですか?
0311デフォルトの名無しさん2010/09/29(水) 13:44:35
>>310
どうしてそのような思考に至ったのか書け。
かかねえなら死ね。
0312デフォルトの名無しさん2010/09/29(水) 13:49:34
ステップ数が少ない方が実行速度が速いのかなと思ったので。
後いろいろ最適化かけてみて平均的に早い(どちらも大して変わらない)
方を選ぼうと思ったので聞いてみることにしました。
0313デフォルトの名無しさん2010/09/29(水) 13:59:58
ファイルから複素行列を読み込んで
complex A[N][N];
で宣言した2次元配列に格納したいと考えてます。
例えば、N=3のとき、
ファイルには実部と虚部がスペース区切りで以下のように並んでいる場合、
(実部と虚部で1要素)
どのようにして読み込めばいいでしょうか。

実部 虚部 実部 虚部 実部 虚部
実部 虚部 実部 虚部 実部 虚部
実部 虚部 実部 虚部 実部 虚部

もちろんエラーが出るのですが、
感覚的には以下のようにして読み込みたいです。

for (i = 0; i < n; i++) {
for (j = 0; j < n; j++) {
fscanf(fp, "%lf %lf", creal(matrix[i][j]), cimag(matrix[i][j]));
}
}
0314デフォルトの名無しさん2010/09/29(水) 14:01:16
ベンチマークをひとにやらせるな。
0315デフォルトの名無しさん2010/09/29(水) 14:04:31
>>313
double x, y;
fscanf(fp, "%lf %lf", &x, &y);
matrix[i][j] = complex(x, y);
0316デフォルトの名無しさん2010/09/29(水) 14:08:04
ここの先生方の力で初心者向けC言語講座サイトを作成していただけませんか?
もちろんアフィリエイトは踏ませていただきます
0317デフォルトの名無しさん2010/09/29(水) 14:17:51
>>312
感覚的には悪くない発想だが、そうでない例もあるので保証にはならない
例えばループアンロールは命令量を増大させるが、
適切に使用すれば性能は上がる
0318デフォルトの名無しさん2010/09/29(水) 14:29:58
>>315
ありがとうございます。

double x, y;
for (i = 0; i < n; i++) {
for (j = 0; j < n; j++) {
fscanf(fp, "%lf %lf", x, y);
matrix[i][j] = complex(x, y);
}
}

とすると
error: expected expression before ‘__complex__’
と出てしまったので、

complex x, y;
for (i = 0; i < n; i++) {
for (j = 0; j < n; j++) {
fscanf(fp, "%lf %lf", x, y);
matrix[i][j] = x + y * I;
}
}

とすると、コンパイルは通るのですが
セグメントエラーになってしまいました;

どうすればいいでしょうか?
0319デフォルトの名無しさん2010/09/29(水) 15:31:35
>>318
&x, &y
0320デフォルトの名無しさん2010/09/29(水) 15:47:27
>>318
*x,*y
0321デフォルトの名無しさん2010/09/29(水) 15:52:15
>>318
scanfの使い方を間違っている。%lfならdoubleへのポインタを渡す。

とにかくなんでもまずはhelpを読むんだ。unix系ならman、WinならMSDN。
次にgoogle先生でコードを探してそれをパクる。
他人が書いたライブラリを使おうってのに説明なしなんてあまりにも無茶すぎる。

で、complexってstd::complex?ならそれはC++。
0322デフォルトの名無しさん2010/09/29(水) 15:55:37
Cで必要最低限の機能を持った簡単なシューティングを作る場合、
コードは何行で収まりますか?
0323デフォルトの名無しさん2010/09/29(水) 15:56:22
>>322
改行しなきゃ一行だろ
0324デフォルトの名無しさん2010/09/29(水) 15:58:53
>>323
ぷぷぷ、だよなw
0325デフォルトの名無しさん2010/09/29(水) 16:04:56
Cで必要最低限の機能を持った簡単なシューティングを作る場合、 コードは何行で収まりますか?
0326デフォルトの名無しさん2010/09/29(水) 16:04:58
規格上、一行あたりの文字数には制限があったはずだが
C89で511文字とかだっけ?
0327デフォルトの名無しさん2010/09/29(水) 16:06:01
つまんね
0328デフォルトの名無しさん2010/09/29(水) 16:07:40
>>323=>>324自演乙
0329デフォルトの名無しさん2010/09/29(水) 16:10:09
>>325その質問には意味がない。
それと二度と書きこまないように。
0330デフォルトの名無しさん2010/09/29(水) 16:28:47
またおまえかC#スレに変えれ
0331デフォルトの名無しさん2010/09/29(水) 16:33:42
※このスレは中級者見習いが初心者を罵倒するスレです
0332デフォルトの名無しさん2010/09/29(水) 16:47:53
左辺値って何ですか
ググッてもよくわからないんですが
0333デフォルトの名無しさん2010/09/29(水) 16:52:00
>>210
駄目だが、ヒントにはなった。ありがとう。
0334デフォルトの名無しさん2010/09/29(水) 16:56:01
>>332
代入演算子の左辺に現れることのできる値のことです
例えば x = 3 の x のことです
0335デフォルトの名無しさん2010/09/29(水) 18:28:20
OpenSSLのファイル暗号化の秘密鍵ってどうやって生成されてるの?
ファイルごとに毎回変わってるの?
0336デフォルトの名無しさん2010/09/29(水) 18:31:52
コイツいつまで粘着するの?
0337デフォルトの名無しさん2010/09/29(水) 18:33:41
>>336
お前が粘着してんだろ
0338デフォルトの名無しさん2010/09/29(水) 18:41:17
公開鍵の生成は確率的暗号化してるってわかるけど、(OAEP)
秘密鍵暗号の場合は鍵をどう使っているのか不思議。
まさかパスワード?
0339デフォルトの名無しさん2010/09/29(水) 18:54:36
スレ違い
0340デフォルトの名無しさん2010/09/29(水) 18:56:24
>>338は、発言によりLinuxもTeraTermを使ったこともないことがバレたようです。
03413322010/09/29(水) 19:02:25
>>334
ありがとうございます
もう一つ質問なんですが(x=y)=6はなぜだめなんでしょうか
0342デフォルトの名無しさん2010/09/29(水) 19:14:24
>>341
代入式は左辺値ではないからです
左辺値でないので x=y は = の左側に来ることはできません
0343デフォルトの名無しさん2010/09/29(水) 19:15:14
>>338
このスレは馬鹿ばっかりだから、聞くだけ無駄
0344デフォルトの名無しさん2010/09/29(水) 19:16:03
(x = y) はyを代入したxの値として評価されるから
0345デフォルトの名無しさん2010/09/29(水) 19:17:17
>>343
だな。
0346デフォルトの名無しさん2010/09/29(水) 19:17:26
両方に代入したきゃ()つけないで、x=y=6でいいじゃん
0347デフォルトの名無しさん2010/09/29(水) 19:18:37
>>342
それは違うx=yは左辺値だよ、人に教える前に自分が勉強しろ
0348デフォルトの名無しさん2010/09/29(水) 19:18:45
追い払おうとしてるのか自演なのかよく分からん
0349デフォルトの名無しさん2010/09/29(水) 19:20:09
”代入演算子の左辺に現れること”が出来ないから左辺値じゃないんじゃねw
0350デフォルトの名無しさん2010/09/29(水) 19:20:23
>>347
そだね、()で囲むのが問題、それによって左辺値でなくなる。
0351デフォルトの名無しさん2010/09/29(水) 19:20:32
>>347
わざわざ調べて書いたから間違いない
An assignment expression has the value of the left operand after the assignment, but is not an lvalue.
って書いてあった
0352デフォルトの名無しさん2010/09/29(水) 19:21:06
普通に考えて分解すると
x=y;
x=1;
の順で計算されてるから
0353デフォルトの名無しさん2010/09/29(水) 19:21:17
>>349
馬鹿はどっかいけ!
0354デフォルトの名無しさん2010/09/29(水) 19:34:35
>>350
では (x) = 6; はダメなのか?

# 左辺値という言葉の「左」は確かに代入に由来するようだが
# 今となっては左辺値であっても代入はできないものがゴロゴロある
0355デフォルトの名無しさん2010/09/29(水) 19:35:30
あげんな
0356デフォルトの名無しさん2010/09/29(水) 19:40:43
x=yという式の値は右辺値だろw
0357デフォルトの名無しさん2010/09/29(水) 19:59:09
3秒間に何回暗号化できるかの実験をしたいのですが、時間を制限して
プログラムを実行するいい方法はありませんか。因みにOpenSSLでは、

openssl speed des aes camellia

で3秒間に処理できるブロック数が表示されます。
0358デフォルトの名無しさん2010/09/29(水) 20:01:16
3秒あたり何回回ったかがわかればいいんじゃないの?
0359デフォルトの名無しさん2010/09/29(水) 20:03:25
暗号くんのレスをすべてつなげてある復号化アルゴリズムにかけると徳川埋蔵金の在処を示す文字列になる
0360デフォルトの名無しさん2010/09/29(水) 20:05:13
暗号中学生はいつになったら消えるの?
0361デフォルトの名無しさん2010/09/29(水) 20:11:42
スルー徹底すればすぐにでも
0362デフォルトの名無しさん2010/09/29(水) 20:14:50
3秒でプログラムを停止させる方法が知りたいです。
0363デフォルトの名無しさん2010/09/29(水) 20:16:09
alarm(3);
0364デフォルトの名無しさん2010/09/29(水) 20:21:09
エラーが出ます。

未解決のシンボルalarmが関数mainで参照されました。

manで調べても出てきません。何回ループしたかも表示させたいです。
0365デフォルトの名無しさん2010/09/29(水) 20:23:42
1万回処理するのにどんくらい時間がかかるか調べろよ
0366デフォルトの名無しさん2010/09/29(水) 20:24:11
暗号の前にCの基礎を勉強しろ馬鹿。やる気ないならやめちまえ
0367デフォルトの名無しさん2010/09/29(水) 20:26:05
#include <time.h>

int main(void)
{
  time_t start_time, now_time;
  time(&start_time);
  while(1)
  {
    time(&now_time);
    if((now_time - start_time) >= 3){ break; }
  }
  return 0;
}
0368デフォルトの名無しさん2010/09/29(水) 20:27:58
9000000回で13秒。
カメリアは3秒。
0369デフォルトの名無しさん2010/09/29(水) 20:28:35
それだと、timeの実行時間が付加されるような
0370デフォルトの名無しさん2010/09/29(水) 20:35:18
それは仕方なくね。
while内を2倍にすれば差でタイムがわかるとおもう
0371デフォルトの名無しさん2010/09/29(水) 20:38:42
> 9000000回で13秒
?=9000000*3/13
0372低脳基地2010/09/29(水) 21:01:53
お前ら何を、右辺値とか左辺値とか分け解らん言葉使っているんだ
正しく右辺オブジェクト、左辺オブジェクトと使えよw
(x=y)=6の (x=y)の結果が名前付の左辺オブジェクトを返さないからだろ
何が帰ってくるのかって?
x=0、y=1
した場合(x=y)で戻ってくるのは名前付オブジェクトxではなく,xが管理しているの数字の1
お前ら1=6って平気でやって何でだって大騒ぎしてるんだろw
int a,b
a=bとした時にオブジェクトaとオブジェクトbが同一になるのかよ。それが管理していの値が同じになるだけだろ
管理しているもの値は同じになるが、オブジェクトが同じになるわけじゃない。同じになるならアドレスも同じになるよな。
よくあるパターンのif( (c = Fxxx()) == XXX ){}の(c = xxx())でもそう
で==の右左の条件って何か教えて
struct neko{};、struct neko a、 struct neko b、a == b、何を比較してるんだこれ
0373デフォルトの名無しさん2010/09/29(水) 21:03:58
memcpy?
0374デフォルトの名無しさん2010/09/29(水) 21:07:31
memcmp?の方だった
0375デフォルトの名無しさん2010/09/29(水) 21:34:46
実際にtime()程度の精度のタイマーで時間を測りたいなら、
>367のwhileの前に一旦変化点を見定めておかないと誤差が平均0.5secに拡大してしまうよ。
0376デフォルトの名無しさん2010/09/29(水) 22:21:51
memcpyってどう使うの?
0377デフォルトの名無しさん2010/09/29(水) 22:28:33
struct neko{};、struct neko a、 struct neko b、a = b
0378デフォルトの名無しさん2010/09/29(水) 23:11:45
>>376
代入演算子=の関数版がmemcpy
struct neko{};、struct neko a、 struct neko b、a = b
ならmemcpy( &a, &b, sizeof(a) )
0379デフォルトの名無しさん2010/09/29(水) 23:26:54
>>376
>378の説明では不充分だけど、使わなければならないケースは入門レベルを超えるので使えなくても大丈夫。
0380デフォルトの名無しさん2010/09/30(木) 02:54:26
>>319-321
double x, y;
for (i = 0; i < n; i++) {
for (j = 0; j < n; j++) {
fscanf(fp, "%lf %lf", &x, &y);
matrix[i][j] = x + y * I;
}
}

遅くなりましたが、これでできました。
本当にありがとうございました
0381デフォルトの名無しさん2010/09/30(木) 03:05:22
CygwinのGCCで作ったバイナリをWINのコンソールで実行させるにはどうしたら
いいですか?GCCで作ったバイナリの方が早かったのでWIN上での動作確認を
したいです。どなたか教えてください。
0382デフォルトの名無しさん2010/09/30(木) 03:19:35
>>381
MinGWを入れるべし
0383デフォルトの名無しさん2010/09/30(木) 04:09:24
インストールしてる間にフリーズして出来ない。
CygwinはDOSのプロンプトから実行できないけどMinGWは出来るんですか?
0384デフォルトの名無しさん2010/09/30(木) 04:13:27
できます
というかMSVCRT.DLLを使ってるからWindowsでそのまま実行できるはず
0385デフォルトの名無しさん2010/09/30(木) 04:14:22
入れるんだったらここのwebdlがいいよ

http://tdm-gcc.tdragon.net/download
0386デフォルトの名無しさん2010/09/30(木) 04:28:00
emmintrin.h
がないってエラーが出ます。
0387デフォルトの名無しさん2010/09/30(木) 05:05:06
c:\mingw32\bin\../lib/gcc/mingw32/4.5.1/include/emmintrin.h:32:3: error: #error
"SSE2 instruction set not enabled"
0388デフォルトの名無しさん2010/09/30(木) 07:26:55
ふはぁ
0389デフォルトの名無しさん2010/09/30(木) 07:49:20
mingw32のコンパイラのバージョンは4.5.1だけどCygwinのバージョン
は4.3.4です。GCCのオプションで
gcc -O3 -ftree-vectorize を付けたとき、Cygwinのときはループの
ベクトル化をしてくれますがmingw32のときは失敗してベクトル化
してくれません。どうすればいいですか。
0390デフォルトの名無しさん2010/09/30(木) 08:03:20
>>389
cygwinで-fno-cygwinだとどう?

つーか、入門篇で扱う内容じゃないから後はCygwin/Mingwスレで。
0391デフォルトの名無しさん2010/09/30(木) 08:16:29
-fno-cygwin
GCCでそんなオプションありませんでした。
Cygwinスレも見つかりません。
0392デフォルトの名無しさん2010/09/30(木) 08:29:03
>GCCでそんなオプションありませんでした。
どんなエラーが出た? それと、gcc --versionした結果は?

>Cygwinスレも見つかりません。
どこ探しているの? 馬鹿なの?
Cygwin + MinGW + GCC 相談室 Part 5
http://hibari.2ch.net/test/read.cgi/tech/1269400706/
0393デフォルトの名無しさん2010/09/30(木) 08:35:52
cc1.exe: error: unrecognized command line option "-fno-cygwin"
gcc (tdm-1) 4.5.1
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
0394デフォルトの名無しさん2010/09/30(木) 09:01:37
fno-cygwinに似たオプションがあるからそれだね
0395デフォルトの名無しさん2010/09/30(木) 10:06:13
暗号くんは難しい?計算式は理解できるけど
簡単なことは理解できないんだね。
英語のエラーメッセージもまともに読まないって感じか?
0396デフォルトの名無しさん2010/09/30(木) 10:15:50
>>395
そうです
0397デフォルトの名無しさん2010/09/30(木) 12:12:21
http://codepad.org/RJ3J8hjW
数独を解答するプログラムを作りましたがなぜかうまくいきません
原因を教えていただけないでしょうか?
0 0 3 0 0 0 0 0 0
0 9 0 0 0 0 2 0 0
4 0 0 5 7 8 0 1 0
0 8 2 9 0 0 4 0 3
0 0 5 0 0 0 0 0 7
0 0 1 0 0 0 0 0 8
8 0 0 6 2 5 0 9 0
0 0 0 4 0 0 0 0 0
0 6 0 0 0 0 8 0 0
0398デフォルトの名無しさん2010/09/30(木) 12:24:05
>>394
-mno-cygwin ではどうでしょうかね。
0399デフォルトの名無しさん2010/09/30(木) 12:37:06
>>398
移動したようだから相手にすんな。

>>397
コード追うのが面倒なんだけど、再帰を使わずにどうやってバックトラックしているの?
04003972010/09/30(木) 12:48:23
もしブロック内または縦横に同じ数がなければmasu[x]を確定しnext(y,x+1)に進み
先で不具合があったらmasu[x]まで戻って次の数に進むようにしようとしたのですが
うまくいきません
0401デフォルトの名無しさん2010/09/30(木) 14:24:04
>>400
コード汚すぎ
どうして再帰呼び出しでやらないの?
配列に2次元にすりゃいいのに。。。
04023972010/09/30(木) 14:41:58
>>401
今月の頭から覚え始めたばかりなのでコードの汚さはご容赦ください
再帰呼び出しについて調べてみることにします
0403デフォルトの名無しさん2010/09/30(木) 14:49:53
数独ってどうやんのが一番効率いいんかね
力任せに再帰していったらいつ終わるかわからんぜ
0404デフォルトの名無しさん2010/09/30(木) 14:52:07
一番穴の少ない行または列から探し始めれば少しはマシなんじゃないかな
0405デフォルトの名無しさん2010/09/30(木) 14:54:16
>>403
最近のCPUを舐めちゃいかんよ。真面目にアルゴリズムを考えるなくても、
単純なバックトラックだけで実装しても充分実用的な時間で解ける。
0406デフォルトの名無しさん2010/09/30(木) 15:11:45
すみません。

char*型の文字列をTCHAR*型の文字列に変換する関数を作成したのですが、
少なくともUNICORD実装環境では4文字('\0'含む)までしか正しく変換出来ません。

問題点について考察したのですが、良く分からないのでご教授頂けたらと思います。

TCHAR* char_to_tchar(const char *pszChar){
long nLen;

TCHAR *pszTchar;

/*入力がNULLだった場合*/
if(pszChar==NULL){
return NULL;
}

/*文字数の取得*/
for(nLen=0;pszChar[nLen]!='\0' && nLen>=0;nLen++);
nLen++;

/*メモリの確保*/
pszTchar=(TCHAR*)malloc(sizeof(TCHAR)*(nLen+1));

/*メモリの確保に失敗した場合*/
if(pszTchar==NULL){
return NULL;
}

続く
0407デフォルトの名無しさん2010/09/30(木) 15:14:08
>>406の続き

#ifdef UNICODE
/*char型からwchar_t型に変換*/
::MultiByteToWideChar(CP_THREAD_ACP,0,pszChar,strlen(pszChar)+1,(LPWSTR)pszTchar,sizeof(pszTchar));

#else
/*文字列のコピー*/
strcpy(pszTchar,pszChar);

#endif

return pszTchar; //処理が終わったらfree
}



正しく変換できるの最初の4文字までで、以降は文字化けします。

知識のある方、是非お願い致します。
0408デフォルトの名無しさん2010/09/30(木) 15:15:12
sizeof(pszTchar) == 4
04093972010/09/30(木) 15:29:39
ネットを見ながら書いてみた結果さらに悪化したのですが何ででしょうorz
http://codepad.org/mxC15vFl
0410デフォルトの名無しさん2010/09/30(木) 15:33:58
なぁ、そもそも数独って何?
0411デフォルトの名無しさん2010/09/30(木) 15:40:30
>>410
めんどくさいから検索してくれ。簡単に言えば、9x9升に1から9の数字を縦横ブロック毎にユニークになるように並べるパズルだ。
0412デフォルトの名無しさん2010/09/30(木) 15:40:31
・同じ列で同じ数字を2つ以上使ってはいけない
・同じ行で同じ数字を2つ以上使ってはいけない
・3x3ブロック内で同じ数字を2つ以上使ってはいけない
以上の条件を満たすように空欄を1〜9の数字で埋めるゲーム
04133972010/09/30(木) 15:40:46
>>410
3×3のブロックに区切られた 9×9 の正方形の枠内に1〜9までの数字を入れるパズル
ナンプレ
0414デフォルトの名無しさん2010/09/30(木) 15:49:35
>>405
試しに作ってみた。雑に作ったら結構時間掛かったぞ。
--
$ time ./a < foo
0 0 3 0 0 0 0 0 0
0 9 0 0 0 0 2 0 0
4 0 0 5 7 8 0 1 0
0 8 2 9 0 0 4 0 3
0 0 5 0 0 0 0 0 7
0 0 1 0 0 0 0 0 8
8 0 0 6 2 5 0 9 0
0 0 0 4 0 0 0 0 0
0 6 0 0 0 0 8 0 0

7 5 3 1 9 2 6 8 4
1 9 8 3 4 6 2 7 5
4 2 6 5 7 8 3 1 9
6 8 2 9 1 7 4 5 3
9 4 5 8 6 3 1 2 7
3 7 1 2 5 4 9 6 8
8 3 4 6 2 5 7 9 1
2 1 7 4 8 9 5 3 6
5 6 9 7 3 1 8 4 2


real 0m32.131s
user 0m30.733s
sys 0m0.030s
0415デフォルトの名無しさん2010/09/30(木) 15:59:15
規格で保証されてんのは再帰17(?)回だっけ
それ以下で解けないとだめだよなJK
0416デフォルトの名無しさん2010/09/30(木) 16:06:11
規格に制限なんかあったか?
スタックさえ気をつければ平気だと思ったが
04173972010/09/30(木) 16:07:20
ミスが見つけられないorz
0 0 3 0 0 0 0 0 0
0 9 0 0 0 0 2 0 0
4 0 0 5 7 8 0 1 0
0 8 2 9 0 0 4 0 3
0 0 5 0 0 0 0 0 7
0 0 1 0 0 0 0 0 8
8 0 0 6 2 5 0 9 0
0 0 0 4 0 0 0 0 0
0 6 0 0 0 0 8 0 0

1 1 3 1 1 1 5 4 4
1 9 6 1 1 1 2 3 4
4 2 6 5 7 8 3 1 6
6 8 2 9 1 1 4 5 3
3 3 5 1 1 1 1 2 7
3 3 1 2 3 2 5 2 8
8 1 4 6 2 5 1 9 1
1 1 7 4 1 1 1 2 1
1 6 4 1 1 1 8 2 1
0418デフォルトの名無しさん2010/09/30(木) 16:34:11
>>417
動くように直してみたよ
見比べて参考にしてみてくれ
http://codepad.org/F1qWvnwF
0419デフォルトの名無しさん2010/09/30(木) 16:42:04
>>415
何の規格だyp
ちなみに、>414はPen4 2.2GHzでの時間ね。

って書いているうちに>418を見たのでそれも試した。
--
$ time ./a < foo

7 5 3 1 9 2 6 8 4
1 9 8 3 4 6 2 7 5
4 2 6 5 7 8 3 1 9
6 8 2 9 1 7 4 5 3
9 4 5 8 6 3 1 2 7
3 7 1 2 5 4 9 6 8
8 3 4 6 2 5 7 9 1
2 1 7 4 8 9 5 3 6
5 6 9 7 3 1 8 4 2
real 0m0.057s
user 0m0.046s
sys 0m0.030s
--
冗談じゃねぇw
0420デフォルトの名無しさん2010/09/30(木) 16:53:44
>>414=>>419 涙目w

例の「最も難しい」とされる問題でどの位掛かるんだ?
隙間が多かろうが論理的に解くには複雑だろうが総当りなら関係ないと思うんだが。
0421デフォルトの名無しさん2010/09/30(木) 16:55:05
>>415
main() { a(17); }
a(b)
{
char c[2147483647];
if(b) a(b-1);
}
0422デフォルトの名無しさん2010/09/30(木) 17:07:30
>>420
これ?
--
. . 5 3 . . . . .
8 . . . . . . 2 .
. 7 . . 1 . 5 . .

4 . . . . 5 3 . .
. 1 . . 7 . . . 6
. . 3 2 . . . 8 .

. 6 . 5 . . . . 9
. . 4 . . . . 3 .
. . . . . 9 7 . .
--
ほらよ。Cygwinだから所要時間は誤差の範疇。
--
$ time ./a < most

1 4 5 3 2 7 6 9 8
8 3 9 6 5 4 1 2 7
6 7 2 9 1 8 5 4 3
4 9 6 1 8 5 3 7 2
2 1 8 4 7 3 9 5 6
7 5 3 2 9 6 4 8 1
3 6 7 5 4 2 8 1 9
9 8 4 7 6 1 2 3 5
5 2 1 8 3 9 7 6 4
real 0m0.056s
user 0m0.030s
sys 0m0.062s
0423デフォルトの名無しさん2010/09/30(木) 17:28:26
9x9を9枚のレイヤーみたいに扱って
9X9X9のビット列で比較したら速くならないかな
0424414=419=4222010/09/30(木) 17:45:31
>>423
これ以上早くしてどうすんのw

というわけで、自分のも計測誤差の領域まで速くなった。
既にある数字まで無駄にチェックしちゃっていたよ。
0425デフォルトの名無しさん2010/09/30(木) 17:48:58
小手先の技で高速化しようとするな。
素直にシンプルに書け。
高速化の要求はハード側にしろ。
0426>>406-4072010/09/30(木) 19:22:15
>>408
無事解決いたしました。
ありがとうございました。
0427デフォルトの名無しさん2010/09/30(木) 19:34:35
>>414
遅すぎワロタ
0428デフォルトの名無しさん2010/09/30(木) 19:40:14
>>427
sysでは勝ってるだろバカ
0429デフォルトの名無しさん2010/09/30(木) 20:09:34
VC++2010
なぜかelseの中まで実行していく・・・助けてクリ

DWORD dBuf;
MENUITEMINFO info;
GetMenuItemInfo( hSubMenu, IDM_TOPMOST, FALSE, &info );

if( info.fState == MFS_CHECKED )
{
dBuf = MFS_UNCHECKED;
SetWindowPos(hWnd,HWND_NOTOPMOST,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);
} else {
dBuf = MFS_CHECKED;
SetWindowPos(hWnd,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);
}
0430デフォルトの名無しさん2010/09/30(木) 20:10:49
(info.fState & MFS_CHECKED) == MFS_CHECKED
0431デフォルトの名無しさん2010/09/30(木) 20:11:36
言葉足らずだった;
条件が真の場合でもelseの中実行してしまう
0432デフォルトの名無しさん2010/09/30(木) 20:16:23
>>430
アリガトンでもまだ実行してしまう;;

if((info.fState & MFS_CHECKED) == MFS_CHECKED){
dBuf = MFS_UNCHECKED;
SetWindowPos(hWnd,HWND_NOTOPMOST,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);
} else {
dBuf = MFS_CHECKED;
SetWindowPos(hWnd,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);
}
0433デフォルトの名無しさん2010/09/30(木) 20:18:25
実行するわきゃねーだろ。全部コード晒せ。
0434デフォルトの名無しさん2010/09/30(木) 20:20:36
>>432
それでだめならそもそもinfo.fStateにフラグが立ってない
そこのコード以外の部分の問題だ
0435デフォルトの名無しさん2010/09/30(木) 20:26:38
とりあえず前後だけ。ほんとにナゾ・・・
これでもダメだったら恥ずかしい部分(コード的にじゃなくて)修正してうpします。

static HMENU hMenu,hSubMenu;
MENUITEMINFO info;
ZeroMemory(&info,sizeof(MENUITEMINFO));
static DWORD dBuf;
/*メッセージ分岐*/
case IDM_TOPMOST: //システムトレイアイコン右クリック時ポップアップメニューの中にある最前面表示切替
info.cbSize = sizeof(info);
info.fMask = MIIM_STATE;
hMenu = LoadMenu(hInst,MAKEINTRESOURCE(IDR_MENU1));
hSubMenu = GetSubMenu( hMenu, 0 );

GetMenuItemInfo( hSubMenu, IDM_TOPMOST, FALSE, &info ); //チェック状態取得

if((info.fState & MFS_CHECKED) == MFS_CHECKED){
dBuf = MFS_UNCHECKED;
SetWindowPos(hWnd,HWND_NOTOPMOST,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);
} else {
dBuf = MFS_CHECKED;
SetWindowPos(hWnd,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);
}

info.fState=dBuf;

hMenu = LoadMenu(hInst,MAKEINTRESOURCE(IDR_MENU1));
hSubMenu = GetSubMenu( hMenu, 0 );
SetMenuItemInfo( hSubMenu, IDM_TOPMOST, FALSE, &info );
break;
0436デフォルトの名無しさん2010/09/30(木) 20:28:01
info.fStateは8が入ってます。うーむ??
0437デフォルトの名無しさん2010/09/30(木) 20:29:26
関数自体が2回呼び出されてるんじゃないの?
0438デフォルトの名無しさん2010/09/30(木) 20:29:58
elseブロックの中に入ってるって根拠はもちろんデバッガなんだよな?
0439デフォルトの名無しさん2010/09/30(木) 20:30:27
>>435
本当に両方実行されているってどう確認した?
0440デフォルトの名無しさん2010/09/30(木) 20:31:26
俺も static が気になるなあ
0441デフォルトの名無しさん2010/09/30(木) 20:32:38
も、ってお前しか気にしてない
0442デフォルトの名無しさん2010/09/30(木) 20:32:39
VC++で両方にブレークポイントはってるんですがそこが実行されてるんです。。。
0443デフォルトの名無しさん2010/09/30(木) 20:35:03
紛らわしいので追記ステップで実行しました・・・
0444デフォルトの名無しさん2010/09/30(木) 20:35:45
両方だけじゃなくてif文の前後にも置いて、1回の実行で両方実行されてるか調べて
0445デフォルトの名無しさん2010/09/30(木) 20:36:05
なんで毎回LoadMenuしてんだ
0446デフォルトの名無しさん2010/09/30(木) 20:42:18
>>444
elseの中のブレークポイントふみませんでした;;;
凡ミスかもしれませんつってk(

んでもステップオーバーだと踏んでいくんです
>>445
ハンドルがしょっちゅう変わるんで。これも謎なんです・・・
0447デフォルトの名無しさん2010/09/30(木) 20:43:55
もしかして: リリースビルド
0448デフォルトの名無しさん2010/09/30(木) 20:44:19
LoadMenu の段階で menu-state は初期化される

LoadMenu(初期状態) → 条件分岐 → LoadMenu(初期状態) → state セット
2回目の以降の呼び出しも同じように
LoadMenu(初期状態) → 条件分岐 → LoadMenu(初期状態) → state セット

LoadMenu を1回だけ呼ぶようにして 状態を保持したまま分岐できるようにしないとマズイ
0449デフォルトの名無しさん2010/09/30(木) 20:47:33
>>447
そのようでした。お手数かけました。さよならありがとちきゅうすれ汚しゴメンネあふうううう
04503972010/09/30(木) 20:48:40
解決しました
>>418
ありがとうございます
0451デフォルトの名無しさん2010/09/30(木) 20:49:59
>>448
MSDNちゃんと読んでませんでした。んで結果ちゃんと動きました。
レス下さった皆様、本当にありがとうございました。
0452デフォルトの名無しさん2010/10/01(金) 07:22:58
ふっほっはっ
0453デフォルトの名無しさん2010/10/01(金) 08:15:24
警告が出て気になります。何が原因でしょうか。

#if 1
{
dd= &buff[k*16];
u= *dd;
}
#else
memcpy(u.m,&buff[16*k],16);
#endif

memcpy(dd,&buff[16*k],16);

hash.c:230:11: warning: assignment from incompatible pointer type
hash.c:237:7: warning: incompatible implicit declaration of built-in function 'm
emcpy'
0454デフォルトの名無しさん2010/10/01(金) 08:39:12
incompatible pointer type って書いてあるのに。
implicit declarationは、適切なheader fileをincludeしていないから。
incompatibleっていってるからincludeすると別の警告が出るだろうけど。
0455デフォルトの名無しさん2010/10/01(金) 11:28:00
string.hを追加すれば、消えるでしょ
0456デフォルトの名無しさん2010/10/01(金) 11:33:53
エラーメッセージが解読できない暗号くんでした
0457デフォルトの名無しさん2010/10/01(金) 12:03:36
なぜこんなにも妬ましいのだろう
0458デフォルトの名無しさん2010/10/01(金) 13:43:06
incompatible pointer type って書いてあるのに。
implicit declarationは、適切なheader fileをincludeしていないから。
incompatibleっていってるからincludeすると別の警告が出るだろうけど。
0459デフォルトの名無しさん2010/10/01(金) 18:09:56
ふっほっはっ
0460デフォルトの名無しさん2010/10/01(金) 18:10:29
C++に慣れると変数宣言の位置が固定なのにイラッとするな
おかげでスコープ区切るだけの括弧が量産されるわ
0461デフォルトの名無しさん2010/10/01(金) 18:27:01
C99
0462デフォルトの名無しさん2010/10/01(金) 18:30:14
動的言語に慣れると変数宣言することにすらイラッとするようになるよ
0463デフォルトの名無しさん2010/10/01(金) 18:32:49
>>462
変数宣言のないのはちょっとあれだなあ、タイプミスに気がつかないのが危険だ。
型は臨機応変だけれども、変数宣言は必須、というアプローチが最適だと思うのだけれども。
0464デフォルトの名無しさん2010/10/01(金) 18:36:52
簡単みたいに思えるけど、タイプミスなのか、わからないエラーに悩むんですよ。
コンパイラだと、変数名付きでエラー出してくれるから自分にとっては楽な方。
0465デフォルトの名無しさん2010/10/01(金) 18:42:16
動的言語もたいていは変数宣言しないで使うとグローバル変数になっちゃうから、けっきょくいつも宣言している気がする
Rubyはローカル変数になるけど、そんなに嬉しいわけでもない・・・ 結局明示しないとスコープが・・・
0466デフォルトの名無しさん2010/10/01(金) 18:50:55
結局は、
option explicit
にしちゃうんですよ。でもこれだと型は固定されるのではなかったかと。
型は自由自在、でも宣言は必須、という言語はないかなあ。情報求む。
0467デフォルトの名無しさん2010/10/01(金) 18:55:42
語りたがりウゼーぞ
0468デフォルトの名無しさん2010/10/01(金) 19:09:18
>>460
設計からやり直せよ。
つーか、C++でも汚ねえコード書いてそうだな。
0469デフォルトの名無しさん2010/10/01(金) 19:10:57
>>468
頭大丈夫?
0470デフォルトの名無しさん2010/10/01(金) 19:11:40
うん
0471デフォルトの名無しさん2010/10/01(金) 19:13:48
欲しいのはコレだけだろ。 for(int i=0; i<n; i++){}
0472デフォルトの名無しさん2010/10/01(金) 19:21:45
define使ってfor(1..n){}みたいに書ける?
0473デフォルトの名無しさん2010/10/01(金) 19:32:22
>>467
C しかしらないので、語るほどのものがない、ということですね。よくわかります。
0474デフォルトの名無しさん2010/10/01(金) 19:38:38
>>466はよく分かってない奴が背伸びして語ってるようにしか見えないから
0475466 ◆QZaw55cn4c 2010/10/01(金) 19:53:20
>>474
宣言なしの言語とつきあわされたために、気が狂う寸前にまで陥ったことがないとは、幸せですね。
それはもう大変でした。最終的にはクロスリファレンスをとって、しらみつぶしに調べるしかなかった。

宣言なしの言語でやるなら、総量はせいぜい 10000 ステップが限界ですね。それ以上は勘弁してください。
0476デフォルトの名無しさん2010/10/01(金) 19:57:03
普通にPython使ってるけど
Pythonは変数宣言どころか、標準関数ですら同じ名前を使えばエラーになることなく上書きされるけどね
そういう思想で作られてるわけ。そんなことで気が狂うってw
0477デフォルトの名無しさん2010/10/01(金) 20:01:51
あ、組み込み関数のこと
0478デフォルトの名無しさん2010/10/01(金) 20:06:12
>>476
ダイナミックな型づけと、宣言必須かどうかは別にしたいところ。
他人のtypo をはじくことができないなんて、おそろしくて。いや、typo って無視できるほど少ないわけではないんですよ。

まあ、インタプリタならば、それなりの用途で、それくらいの要求の仕様となっているのでしょうね。
python って宣言必須にはできませんでしたっけ。
0479デフォルトの名無しさん2010/10/01(金) 20:10:36
。が何言ってるのか意味不明
0480デフォルトの名無しさん2010/10/01(金) 20:11:33
>>463
動的言語はIDEのサポートがヘボいからダメだ。
生産性低い。
0481デフォルトの名無しさん2010/10/01(金) 20:13:09
入力補完だけ出来ればいいや
0482デフォルトの名無しさん2010/10/01(金) 20:16:33
静的型で、テンプレートやらジェネリック+型推論のある言語がいい。
言語はそっちのほうこうで進化してほしい。
動的型は廃れたほうが世のためだ。
0483デフォルトの名無しさん2010/10/01(金) 20:18:02
>>480
その点は、宣言があれば解消できるか、と淡い期待をしているのですが、やっぱりだめでしょうか。
0484デフォルトの名無しさん2010/10/01(金) 20:22:52
スレチいい加減にしろよ動的言語を満足に使えない池沼
0485デフォルトの名無しさん2010/10/01(金) 20:25:42
C を動的に使えない池沼だろ
0486デフォルトの名無しさん2010/10/01(金) 20:25:55
コンパイラやらツールに任せられる作業を人間が必死にやって「動的言語を使いこなしてるぜ」って。
04874662010/10/01(金) 20:26:30
>>484
自分の意見が支持されないからといって、すぐに発狂するのは、褒められたものじゃありませんね。
0488デフォルトの名無しさん2010/10/01(金) 20:27:57
>>487
スレチだという事実を否定出来る?
0489デフォルトの名無しさん2010/10/01(金) 20:28:54
ここがいくら中級者が偉そうに語るスレでも>>466みたいな自己中知ったかはいらん
0490デフォルトの名無しさん2010/10/01(金) 20:31:19
人にスレチスレチ言うやつって、自分は別格でスレチOKと思ってるよな。
0491デフォルトの名無しさん2010/10/01(金) 20:31:28
まあなんだ、C で新しい言語処理系を記述しようとしてたんだよ、多分。
0492デフォルトの名無しさん2010/10/01(金) 20:31:28
(俺が使いこなせないから)動的型は廃れたほうが世のためだ(キリッ
0493デフォルトの名無しさん2010/10/01(金) 20:34:07
将来性||次世代の言語を語る
http://hibari.2ch.net/test/read.cgi/tech/1284811709/

↑へどうぞ
0494デフォルトの名無しさん2010/10/01(金) 20:34:50
「動的言語ってIDEやコンパイラに任せられる作業を人手でやらないと
いけないから、結局生産性低いよね」って意見に反論できないで、
ひたすら「動的言語を使えないから反対してる」ってレッテルを
貼るしかできない動的言語信者。
0495デフォルトの名無しさん2010/10/01(金) 20:40:46
>>494
心配しなくても動的言語は一般的に使われてるよ。なんでそこでは静的言語が使われないのかな?
少しは考えなよ
0496デフォルトの名無しさん2010/10/01(金) 20:49:06
道具が悪い! 道具が悪い!

はいはいw
0497デフォルトの名無しさん2010/10/01(金) 20:53:02
twitterはrubyを捨ててScalaに移行らしいし、web方面も静的型に
移行していけばいいのに。

どっかのブログでクライアントが「JavaScriptでサーバー側がJavaってのは
おかしい、サーバーサイドもJavaScriptで書こう」とか言ってたけど、
間違ってるよな。
Googleみたいにクライアントもサーバー側もJavaで書くって方向に行くべき。

まあでも、VB6を使ってる連中がいまだにVB6を使いたがるみたいに、
いまPHPを使ってる層は、世の中がどういう流れでも永遠にPHPだろうな。

0498デフォルトの名無しさん2010/10/01(金) 20:56:38
していけばいいのに。
間違ってるよな。
方向に行くべき。
0499デフォルトの名無しさん2010/10/01(金) 21:00:54
>>462
変数宣言嫌いならfortranでも使ってろ。カス。
0500デフォルトの名無しさん2010/10/01(金) 21:01:39
Lisp使います^^
0501デフォルトの名無しさん2010/10/01(金) 21:07:42
アセンブラが頂点であり至高。
0502デフォルトの名無しさん2010/10/01(金) 21:10:24
このまえpythonの話題のときに動的言語は生産性が低いって
いったらやっぱり具体的な反論はなくて
「pythonが生産性が高いのは動的だからじゃない。pythonだからだ」って
反論なのな。
信者すぎる。

あとLL系はREPLだから習得が早いとか言ってるやつに、C#とかjavaとかも
初心が書くようなコードだとコンパイルは一瞬だし、べつにそれは優位性
ないだろって言ったら、具体的な反論はなくて「ゆとり」とか煽ってきたな。

LL系とか動的言語の信者って、優秀なそれ系の言語のユーザーの
言葉尻にのってるだけだから、基本、言葉が不自由だよな。
0503デフォルトの名無しさん2010/10/01(金) 21:15:43
全然中立じゃない明らかな静的言語信者が何を言ってもなあ
0504デフォルトの名無しさん2010/10/01(金) 21:19:00
要するに取るに足らないうっかりバグの修正にかかるコストとコンパイルコストどっちが受け入れやすいかってことだよな
神経尖らせて手作業でバグ探しするよりコーヒーでも飲みながらコンパイル待つほうが頭いいだろJK
0505デフォルトの名無しさん2010/10/01(金) 21:21:16
まぁ実際にコーヒー入れてコンパイル待つと相当イライラするけどな
会社のPCに自費でSSDいれちゃったよ。あまりコンパイル速度は早くならなかったけど。
0506デフォルトの名無しさん2010/10/01(金) 21:23:55
コンパイル通ったってバグはありえるし、どちらにしろそっちの方が恐いだろ
コンパイル通らないようなミスなら動的言語でも初めの実行時に上手く動かないと思うよ
0507デフォルトの名無しさん2010/10/01(金) 21:27:30
その怖い方のバグはどっちも起こりうるならイーブンで比較材料にならない
その前の段階のバグをメッセージ付きで知らせてくれるか、自分で探さなければならないのか
どっちが良いかはすぐに分かるだろう
0508デフォルトの名無しさん2010/10/01(金) 21:31:19
>>506
いや、カバレッジ100%にしないと単純なスペルミスも発見できないでしょ > 動的
0509デフォルトの名無しさん2010/10/01(金) 21:33:18
動的言語にもIDEがあることを知らんのかな。スペルミスが恐いなら補完機能使えば良いし
0510デフォルトの名無しさん2010/10/01(金) 21:33:23
カバレッジ100%でも、一目で分かるようなわかりやすいバグが
発現しなかったら見逃す可能性あるな。
0511デフォルトの名無しさん2010/10/01(金) 21:34:25
>>509
コード補完とかリファクタリングの強力さがぜんぜん。
0512デフォルトの名無しさん2010/10/01(金) 21:35:39
Cでダラダラ書きつらねてビルドしてようやく動かせると思ったら
間違いに気づいて気になるとこ直してたら結局全部変わってた、
とかより
pythonでちょっとずつ動かしながらサラっと書けちゃった方が楽。
pythonが生産性が高いのはpythonだからだ!!!
0513デフォルトの名無しさん2010/10/01(金) 21:35:39
そんなにスペルミスするなら何回コーヒー飲みながら待たなきゃいけないんだろう
0514デフォルトの名無しさん2010/10/01(金) 21:37:19
仕事さぼれるなら1日じゅうコーヒー飲んでてもいいわ俺
0515デフォルトの名無しさん2010/10/01(金) 21:48:00
コーヒー飲みすぎるとハゲるぞ
0516デフォルトの名無しさん2010/10/01(金) 21:48:22
マジで?
0517デフォルトの名無しさん2010/10/01(金) 21:53:14
コーヒーより緑茶だろう
生産性が15%は向上するわ
0518デフォルトの名無しさん2010/10/01(金) 21:55:13
コーヒー、ポリフェノール多いって話があるな。
0519デフォルトの名無しさん2010/10/01(金) 22:16:16
多いっちゃ多いけど、植物由来のものはどれも多かれ少なかれポリフェノールは含まれている。
騙されている人も多いけどお茶のタンニンだってポリフェノールの一種だから、珈琲よりは多く摂ることができるよ。
0520デフォルトの名無しさん2010/10/01(金) 22:18:40
お茶だと糖分が取れない
0521デフォルトの名無しさん2010/10/01(金) 22:20:43
コーヒーに砂糖入れねー
0522デフォルトの名無しさん2010/10/01(金) 22:22:17
男ならブラックだろって知り合いで一番カコイイ人が言ってた
05235212010/10/01(金) 22:24:17
ミルクは入れるよ
0524デフォルトの名無しさん2010/10/01(金) 22:35:57
コーヒーは発癌性があるんじゃなかったっけ。俺は紅茶派だな
0525デフォルトの名無しさん2010/10/01(金) 22:44:47
緑茶を語るスレ
http://toki.2ch.net/test/read.cgi/pot/1096115963/

コーヒー中毒の奴集まれ
http://toki.2ch.net/test/read.cgi/pot/1077551991/

↑へどうぞ
0526デフォルトの名無しさん2010/10/01(金) 22:47:45
>>517,524
緑茶や紅茶だとすぐにできるからコンパイル終わる前に飲み干しちゃうよ
0527デフォルトの名無しさん2010/10/01(金) 22:50:53
豆から!?IT土方なんて皆インスタントじゃないの
0528デフォルトの名無しさん2010/10/01(金) 23:09:19
通常は生茶の2リッター
いったん思考を中断して落ち着く必要がありそうなときコーヒーだね、ミルで挽いて
0529デフォルトの名無しさん2010/10/01(金) 23:18:53
俺はそんな時ペプシNEX
もしくはベッドに横になる
0530デフォルトの名無しさん2010/10/01(金) 23:22:23
水に決まってんだろ。
ゲロルシュタイナーが最強。
0531デフォルトの名無しさん2010/10/01(金) 23:25:22
コーヒーはにがくて飲めない
砂糖3杯くらい入れないと無理
0532デフォルトの名無しさん2010/10/01(金) 23:30:09
>>528
さすがにミルは無いわ。ゴリゴリ五月蝿いだろ
0533デフォルトの名無しさん2010/10/01(金) 23:38:37
>>532
いま電動
手回し使ってたこともあるけどさすがにしんどくてやめた
あーゆープチメカは基本的に好きなので捨ててはいない
0534デフォルトの名無しさん2010/10/01(金) 23:57:25
コーヒーメーカーも自作だろ
0535デフォルトの名無しさん2010/10/02(土) 00:01:03
>>513 死ね
>>514 死ね
>>515 死ね
>>516 死ね
>>517 死ね
>>518 死ね
>>519 死ね
>>520 死ね
>>521 死ね
>>522 死ね
>>523 死ね
>>524 死ね
>>526 死ね
>>527 死ね
>>528 死ね
>>529 死ね
>>530 死ね
>>531 死ね
>>532 死ね
>>533 死ね
>>534 死ね
0536デフォルトの名無しさん2010/10/02(土) 00:07:50
>>535
まるで>>512の俺が書いたみたいじゃないか!やめてくれよ
俺もコーヒー飲むぞ!インスタントでブラックだぞ!コーヒーメーカーは自作じゃないぞ!
0537デフォルトの名無しさん2010/10/02(土) 00:08:25
>>535 死ね
05385362010/10/02(土) 00:11:26
>>537 許す
0539デフォルトの名無しさん2010/10/02(土) 00:13:26
生きる意味 part2
http://toki.2ch.net/test/read.cgi/jinsei/1247800838/

↑へどうぞ
0540デフォルトの名無しさん2010/10/02(土) 00:13:58
>python とかいう書式を強要する言語があることは知っているが、最強とか主張する信者がいるらしいのでなるべく関わらないようにしている。
http://practical-scheme.net/wiliki/wiliki.cgi?Scheme%3AScheme%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9E%E3%81%AE%E3%83%AC%E3%83%99%E3%83%AB10
0541デフォルトの名無しさん2010/10/02(土) 00:23:52
pythonさいきょー!ってかschemeじゃねーか
ほんと括弧多いよな
0542デフォルトの名無しさん2010/10/02(土) 01:14:39
Schemeに惹かれるものを感じ幾度となく手を出しつつもどうしても関数的思考ができなくて挫折してるよ...
CとかJavaとかの手続き型言語に馴染みすぎた
0543デフォルトの名無しさん2010/10/02(土) 02:40:21
生産性生産性言うやつほど何も作らない法則
0544デフォルトの名無しさん2010/10/02(土) 02:57:23
金にならないから
元々、金になることが出来ないから
0545デフォルトの名無しさん2010/10/02(土) 10:17:17
__m128i *pa = (__m128i*)a; __m128i *pb = (__m128i*)b; __m128i *pc = (__m128i*)c;
__m128i *pd1= (__m128i*)d1;__m128i *pd2= (__m128i*)d2;__m128i *pbuf=(__m128i*)buf;
__m128i *pa = (__m128i*)a; __m128i *pb = (__m128i*)b; __m128i *pc = (__m128i*)c;
__m128i *pd1= (__m128i*)d1;__m128i *pd2= (__m128i*)d2;__m128i *pbuf=(__m128i*)buf;
__m128i va, vb, vc, vd1, vd2;
va = _mm_loadu_si128(pa); vb = _mm_loadu_si128(pb); vc = _mm_loadu_si128(pc);
vd1 = _mm_loadu_si128(pd1); vd2 = _mm_loadu_si128(pd2);
_mm_storeu_si128(pa, _mm_xor_si128(va, _mm_adds_epu8(vd1, vc)));
_mm_storeu_si128(pb, _mm_xor_si128(vb, _mm_adds_epu8(vd2, vc)));
_mm_storeu_si128(pbuf++, _mm_xor_si128(_mm_loadu_si128(pbuf), vd1));
_mm_storeu_si128(pbuf, _mm_xor_si128(_mm_loadu_si128(pbuf), vd2));

動くのですが、pbufの中身が

memcpy(&buff[32*k],buf,32);

にコピーされません。
0546デフォルトの名無しさん2010/10/02(土) 10:33:24
>>542
私も挫折している口ですが(SICP難しい)、挫折するたびに、挫折しながら、それでも前よりもちょこっとは進歩している、と信じています。
0547デフォルトの名無しさん2010/10/02(土) 14:18:00
pbufがコピー元になっとらんのでは?
0548デフォルトの名無しさん2010/10/02(土) 14:23:56
pbuf=buf
pbuf++   <ーーこれは何してるの?
0549Perl忍者 ◆M5ZWRnXOj6 2010/10/02(土) 14:26:57
なんか






















ここばかしかいない
0550デフォルトの名無しさん2010/10/02(土) 14:31:47
馬鹿な方がいい時もあるんだよ
0551デフォルトの名無しさん2010/10/02(土) 14:37:58
_mm_storeu_si128(pbuf++, _mm_xor_si128(_mm_loadu_si128(pbuf), vd1));
_mm_storeu_si128(pbuf, _mm_xor_si128(_mm_loadu_si128(pbuf), vd2));

pbuf--;
buf[0]=*pbuf->m128i_i8;
pbuf++;
buf[16]=*pbuf->m128i_i8;

書いてもらったプログラムなのでよくわかりませんが、128ビットの
共用体を2つ分使っているのではないかと思います。
ところで上のプログラムをclでコンパイルすると通るのに、GCCだと
共用体のメンバじゃないといわれてエラーが出ます。pbufからbufに
値を代入する正しい方法を教えてください。もしくはmemcpyでpbuf
からbuffに代入する方法があったら教えてください。よろしくお願いします。
0552デフォルトの名無しさん2010/10/02(土) 14:40:10
入門スレでそんな難しいこと訊いたって答えられる奴はいないぞ
SSEスレとかで訊いた方がいいぞ
0553デフォルトの名無しさん2010/10/02(土) 14:41:13
書いてもらった人に聞くのが速そうだけど、
ここはSSE2とかわかってる人は見てないでしょ
0554デフォルトの名無しさん2010/10/02(土) 14:42:40
というかそこまでするんならいっそのことアセンブラで書いた方がいいんじゃね・・・
もうC言語じゃねーよそれ
0555デフォルトの名無しさん2010/10/02(土) 14:46:51
aとかbufとかunsigned charで宣言してgccでコンパイルしたけど
別に怒られんかったな
0556デフォルトの名無しさん2010/10/02(土) 14:59:13
sse用の関数は無視して
pbuffを書き換えてるところで
buffの内容をダンプしてみればどこで間違ってるかはわかりそうだけど
memcpyより前のところが間違ってるんだよ
0557デフォルトの名無しさん2010/10/02(土) 15:07:00
俺アセンブラなら分かるけど、何とかIntrinsicだっけ?その書き方知らね
0558デフォルトの名無しさん2010/10/02(土) 15:09:05
計算前に
memcpy(buf,&buff[32*k],32);
をやってないから、答えが違うとか騒いでるだけだったりして
0559デフォルトの名無しさん2010/10/02(土) 15:26:11
// pbuf--;
// for(i=0;i<16;i++)
// printf("%u ",pbuf->m128i_u8[i]);
buf[0]=*pbuf->m128i_u8;
pbuf++;
// for(i=0;i<16;i++)
// printf("%u ",pbuf->m128i_u8[i]);
// printf("\n");
buf[16]=*pbuf->m128i_u8;
// for(i=0;i<32;i++)
// printf("%u ",buf[i]);
// printf("\n");

今こうやってpbufの中身をbufにコピーして確認してます。
bufとpbufの内容はあっているようです。
0560デフォルトの名無しさん2010/10/02(土) 15:32:17
部分的にはられてもね、わからんでしょ。天才探したほうがいいよ
0561デフォルトの名無しさん2010/10/02(土) 15:36:58
貼った流れもすでにわかってないような書き方だし
0562デフォルトの名無しさん2010/10/02(土) 15:37:47
つーかマルチポストだぞ?しかも大量に。
0563デフォルトの名無しさん2010/10/02(土) 15:41:07
いつものことでしょ、暗号くんは
0564デフォルトの名無しさん2010/10/02(土) 15:43:29
そろそろコテつけてくれないかな暗号君
0565デフォルトの名無しさん2010/10/02(土) 15:51:08
__m128iって共用体ですよね。そのはずなのに、GCCではメンバじゃない
とエラーになるのが不思議です。pbufのメンバにどうすればアクセス
できるでしょう。
0566デフォルトの名無しさん2010/10/02(土) 15:53:29
最低限の書き方でエラーが出るソースとそのエラーメッセージを貼れ
0567デフォルトの名無しさん2010/10/02(土) 15:54:27
人の話に耳を傾けない者を相手にするバカはいない
0568デフォルトの名無しさん2010/10/02(土) 16:01:59
664 buf[0]=*pbuf->m128i_u8;
pbuf++;

669 buf[16]=*pbuf->m128i_u8;
pbuf--;

error grs.c: In function main
grs.c:664: error: request for member 128i_u8 in something not a structure or union
grs.c:669: error: request for member 128i_u8 in something not a structure or union
0569デフォルトの名無しさん2010/10/02(土) 16:11:10
m128i_u8は定義されてないと言われとるんじゃないのか?
0570デフォルトの名無しさん2010/10/02(土) 16:12:51
>>568他=暗号君=バカ
素晴らしい!
0571デフォルトの名無しさん2010/10/02(土) 16:14:08
暗号君の相手をする人は暗号君だからな
0572デフォルトの名無しさん2010/10/02(土) 16:18:27
VisualStudioのclではきちんと通ります。ヘッダーファイルの違いですかね。
0573デフォルトの名無しさん2010/10/02(土) 16:20:16
m128i_u8でファイル内検索してみれば
0574デフォルトの名無しさん2010/10/02(土) 16:30:14
CygwinとWINでは同じ名前でも構造が全然違う・・・
ヘッダー見たらわかった。
0575デフォルトの名無しさん2010/10/02(土) 16:39:11
typedef long long __m128i __attribute__ ((__vector_size__ (16), __may_alias__));
これはどういう意味ですか?
0576デフォルトの名無しさん2010/10/02(土) 17:05:56
?ttp://www.ohse.de/uwe/articles/gcc-attributes.html
0577デフォルトの名無しさん2010/10/02(土) 17:10:58
考え方としてはWINの方が好き。でも性能はGCCの方が上。
0578デフォルトの名無しさん2010/10/02(土) 17:15:36
WINとGCCって分類おかしいだろ。
0579デフォルトの名無しさん2010/10/02(土) 17:17:06
おまえWINコンパイラ知らないのかよ
0580デフォルトの名無しさん2010/10/02(土) 17:34:29
VBのことか?
0581デフォルトの名無しさん2010/10/02(土) 17:37:27
VisualStudioです
0582デフォルトの名無しさん2010/10/02(土) 20:12:11
>>579
ボーランドという会社のとか Watcom とか、インテルとか、Windows をターゲットにしたCコンパイラにもいろいろあると思うのですが
0583デフォルトの名無しさん2010/10/02(土) 21:09:51
>>579
0584デフォルトの名無しさん2010/10/02(土) 21:14:33
auのSDKに付いてくる
0585デフォルトの名無しさん2010/10/02(土) 23:06:40
main関数の引数でよく見かける表記
char *argv[]
の意味するところは、
char型のデータを格納する配列変数argvが
格納されているメモリの先頭アドレス
で合っているでしょうか?
0586デフォルトの名無しさん2010/10/02(土) 23:10:04
char型へのポインタ(=文字列)の配列

並列へのポインタではない。
0587デフォルトの名無しさん2010/10/02(土) 23:11:35
×並列
○配列
0588デフォルトの名無しさん2010/10/02(土) 23:13:06
VC2008EEです
デスクトップのフォルダの中にプロジェクトがあって作ってたのですが
フォルダの名前を変えたら、プロジェクトを開いてデバッグしようとすると、EXEのデバッグ情報が見つからないか、または一致しません、デバッグを続けますか?
と出ます。はいにすると普通に表示はされるのですがどうしたらただフォルダの名前を変えただけのような状態にできるのでしょうか?
0589デフォルトの名無しさん2010/10/02(土) 23:15:25
リビルドしてみては
0590デフォルトの名無しさん2010/10/02(土) 23:18:23
>>589
ありがとうございました!
0591デフォルトの名無しさん2010/10/03(日) 00:01:39
もしかして文頭に#をつけるとコメントアウトになりますか?
0592デフォルトの名無しさん2010/10/03(日) 00:03:13
文頭ではなく行頭な。
コメントというか、プリプロセサーが意味のない命令として削除するよ。
0593デフォルトの名無しさん2010/10/03(日) 00:03:16
エラー?
0594デフォルトの名無しさん2010/10/03(日) 00:04:07
ふっ、今の俺は無敵だぜ?C言語でお前らを攻撃することも可能だぜ?
0595デフォルトの名無しさん2010/10/03(日) 00:18:34
>>592
ググってみたら#の後には特定の単語以外がくるとコメントアウトみたいになるんですね
ありがとうございました
0596デフォルトの名無しさん2010/10/03(日) 08:09:57
GCC諦めてWIN用アセンブリの組み込み関数を使って計算したアプリにする
事にしました。ベータバージョンですが気になる方は試してみて下さい。
http://sky.geocities.jp/tcshacina/grs.exe.gz
例外処理とか何もしてません。使い方はgrs infile outfile passwdです。
0597デフォルトの名無しさん2010/10/03(日) 08:48:02
またお前か
0598デフォルトの名無しさん2010/10/03(日) 09:04:49
どこの馬の骨かわからん奴が作ったexeを実行するバカはここにはいないよ。
vipにならいるかも知れないけど。
0599デフォルトの名無しさん2010/10/03(日) 09:10:13
そうですよね・・・ウイルスかもしれないし。
JavaScriptで書き直してWEBにでも公開しようかな。
0600デフォルトの名無しさん2010/10/03(日) 09:22:03
スピード気にしてSSE使う一方でjavascriptかよ。w
0601デフォルトの名無しさん2010/10/03(日) 09:34:23
どうしたら使ってもらえますかね?
0602デフォルトの名無しさん2010/10/03(日) 09:36:48
ソースで公開
0603デフォルトの名無しさん2010/10/03(日) 09:40:06
くぴっ
0604デフォルトの名無しさん2010/10/03(日) 09:45:17
まずはアルゴリズムの優秀さをアピールすべきだな。優秀なアルゴリズムなら実装なんて後から付いてくる。
0605デフォルトの名無しさん2010/10/03(日) 09:49:45
汚いけどいいの?
0606デフォルトの名無しさん2010/10/03(日) 09:53:53
シンドローム復号問題という原理に基づいているのですが、実装で
きちんと実現できているかどうかが心配です。ソースを見てもらって
何かアドバイスが受けられたらと思います。自分では優秀かどうか
わかりません。
0607デフォルトの名無しさん2010/10/03(日) 09:57:48
気持ち悪
0608デフォルトの名無しさん2010/10/03(日) 10:06:46
く
0609デフォルトの名無しさん2010/10/03(日) 12:08:24
ふっふっ
ほっほっ
0610デフォルトの名無しさん2010/10/03(日) 12:31:24
あたしの体をすきにしてぇ〜!!

http://sky.geocities.jp/tcshacina/grs.c
0611デフォルトの名無しさん2010/10/03(日) 13:37:25
variably modified ‘変数名’ at file scope
っていうコンパイルエラーなんですけど
この意味教えてもらえませんか?
0612デフォルトの名無しさん2010/10/03(日) 13:44:48
配列宣言に変数は使えない。
0613デフォルトの名無しさん2010/10/03(日) 13:50:20
ファイルスコープでは配列宣言に変数は使えない。
0614デフォルトの名無しさん2010/10/03(日) 13:56:20
配列の要素数宣言に定数ではなく変数を使ってない?
0615デフォルトの名無しさん2010/10/03(日) 14:42:57
二次元配列の配列のサイズについて教えて
main 関数で二次元配列array の大きさを求めると正しいのですが
ArraySize という関数を作成して求めると間違っています、どうしたらイイデツカ

#include <stdio.h>

void ArraySize(char array[4][9]);

int main(void)
{
int i; size_t nSize;
char array[4][9] = {"TOKYO", "OOSAKA", "NAGOYA", "YOKOHAMA"};
for(i = 0; i<4; i++)
printf("%s\n", &array[i]);

nSize = sizeof(array) / sizeof(char);
printf("二次元配列 nSize のさいずは %d です。\n ", nSize);
ArraySize(array);

return 0;
}

void ArraySize(char array[4][9])
{
size_t nSize;
nSize = sizeof(array) / sizeof(char);
printf("二次元配列 nSize のさいずは %d です。(void ArraySize)\n ", nSize);
}
0616デフォルトの名無しさん2010/10/03(日) 15:02:23
>>615
引数に配列渡してもポインタになるから、sizeofじゃサイズはわからない。
0617デフォルトの名無しさん2010/10/03(日) 15:08:06
ふっふっ
ほっほっ
0618デフォルトの名無しさん2010/10/03(日) 15:23:14
>>615
実際の定義は
void ArraySize(char array[][9])
だからな
配列の中身がコピーされてるわけじゃなくて
arrayの先頭アドレスと9Byte区切りであることしか関数には伝わってない
32bit環境ならポインタ型は4Byteだから4になるんじゃ?
0619デフォルトの名無しさん2010/10/03(日) 15:26:34
そして64bitでコンパイルしたオレは8になった
0620デフォルトの名無しさん2010/10/03(日) 15:32:16
>>615
どうしたらいいかっていうのに答えると
マクロでなんとかする
C++なら関数テンプレートで一応できる

あたりかな
0621デフォルトの名無しさん2010/10/03(日) 15:35:38
いいえ、typedefを適用します。
0622デフォルトの名無しさん2010/10/03(日) 15:36:34
ふっふっ
0623デフォルトの名無しさん2010/10/03(日) 15:59:57
int i;
int vc[5] = {10,20,30,40,50};
int *ptr = &vc[0];

と宣言したときエイリアスは
*ptr=ptr[0]
*(ptr+1)=ptr[1]
・
・
・
ってなるけど
右辺は*つけなくていいんですか?
*ptr[0]
みたいに。
0624デフォルトの名無しさん2010/10/03(日) 16:03:12
つけなくておk
06256102010/10/03(日) 16:07:49
C言語のスレなのにちっともレビューが付かない!
0626デフォルトの名無しさん2010/10/03(日) 16:11:08
>>625
インデントがキモい
コメントアウトぐらい消せ
0627デフォルトの名無しさん2010/10/03(日) 16:22:50
よく分からないが踏みたくないので放置
0628デフォルトの名無しさん2010/10/03(日) 16:24:48
PCが物故割れた
06296102010/10/03(日) 16:26:17
暗号としてはどうよ
0630デフォルトの名無しさん2010/10/03(日) 16:32:28
gccでコンパイル出来ないのがあれだ
力技でコンパイルしてみたが、
中身までよく見ようとは思わないソースなんだよね、無駄が多くて
0631デフォルトの名無しさん2010/10/03(日) 16:36:10
暗号としてどうよって、アルゴリズムのオリジナルなの?
0632デフォルトの名無しさん2010/10/03(日) 16:39:45
doubleを単位でまとめてintで表す式ってどういう形になるんですかね?
たとえば2.6を5に12.4を10とかで表す感じです
06336102010/10/03(日) 16:42:10
コンパイルオプションはVisualStudioで
cl /O2 /arch:SSE2 grs.c
で通ります。アルゴリズムはオリジナルです。
まだ無駄だらけです。デバッグの表示もあるし。
0634デフォルトの名無しさん2010/10/03(日) 16:45:08
しょせん厨二の考えた暗号なんて(ry
06356102010/10/03(日) 16:47:14
>>626
今のセリフ凄く萌える・・・っ
0636デフォルトの名無しさん2010/10/03(日) 16:51:48
GCC用のもあるけどCygwinのだからね。
gcc -O2 -ftree-vectorize -msse2 -o grs2 grs2.c
うpしてないけど。
0637デフォルトの名無しさん2010/10/03(日) 16:59:27
http://sky.geocities.jp/tcshacina/grs2.c
0638デフォルトの名無しさん2010/10/03(日) 17:10:54
これは皆がもっと良くしようという目的を持つことを目的に公開されました。
2ch暗号と呼ぼう!(嘘)
0639デフォルトの名無しさん2010/10/03(日) 17:39:25
password指定がないじゃん
0640Perl忍者 ◆M5ZWRnXOj6 2010/10/03(日) 18:04:01
暗号とかわめいてるごみはしねば

ハッカーじゃないやつがいきがるな
0641デフォルトの名無しさん2010/10/03(日) 18:32:39
grsのパスワードは第3引数で指定します。アプリケーションの段階でなく
アルゴリズム検証の段階です。使い方は
grs infile outfile passwd
です。grs2はパスワードに未対応です。
0642デフォルトの名無しさん2010/10/03(日) 18:56:54
ここは質問や相談スレであって
スレチなんだが
0643デフォルトの名無しさん2010/10/03(日) 19:00:14
暗号化なんて乱数とxorでいいんじゃないか?
0644デフォルトの名無しさん2010/10/03(日) 19:01:28
暗号君まだいたのか
0645デフォルトの名無しさん2010/10/03(日) 19:05:37
暗号スレに行きます
0646デフォルトの名無しさん2010/10/03(日) 20:23:27
C言語で実装したからレビューしてもらいたかっただけです。
0647デフォルトの名無しさん2010/10/03(日) 20:26:13
それこそ暗号スレでやれ
0648デフォルトの名無しさん2010/10/03(日) 20:29:28
C言語としてのコードレビューだな

ごみ
0649デフォルトの名無しさん2010/10/03(日) 20:42:59
cygwinインストールできなくてもう3週間たつけど
アドバイスください・・・
PCにウイルスも入ったぽくてもう人生詰んだ
0650デフォルトの名無しさん2010/10/03(日) 20:44:54
MinGWにしとけ。
Cygwin なんてもはや時代遅れだ。
0651デフォルトの名無しさん2010/10/03(日) 20:46:20
フォーマットして再インストールすれば。
ここが感染源かも
0652デフォルトの名無しさん2010/10/03(日) 20:46:56
シーゲンゴミ。
0653デフォルトの名無しさん2010/10/03(日) 20:53:09
>>649
インスコしなおすまえに、完全にアンインスコしてるか?
レジストリに何か残っていてそれが邪魔してることもあるぞ
(Vista の互換モードにハメられたことがある)

それから腐ってもム板の住人なら通称なり挙動なりで
そうと確認できるまでは、早まってウイルスだのと言いたければ
ここでやれ
↓
http://hibari.2ch.net/test/read.cgi/tech/1179424842/
0654デフォルトの名無しさん2010/10/03(日) 20:54:39
ダウンロードした一時ファイルが一瞬に消えるとか
パッケージのインストールに失敗したとか
シェルが起動しないとか
0655デフォルトの名無しさん2010/10/03(日) 20:59:14
>>653
もう鬱になりそう、cygwinのダウンロードだけで徹夜×3週間。

homeディレクトリ開いたらユーザー\ディレクトリできてなかった。
もう死にたい。
0656デフォルトの名無しさん2010/10/03(日) 21:00:07
Linuxにしとけ。インストールが厳しいならVMware+Ubuntuが楽なんじゃないか
0657デフォルトの名無しさん2010/10/03(日) 21:00:31
>>654
パッケージって何ですか?
環境変数って何ですか?
シェルって何ですか?
レジストリって何ですか?
インスコって何ですか?

調べたら調べたらでまた調べないといけないんだろうな
0658デフォルトの名無しさん2010/10/03(日) 21:00:59
Cygwinだとかウイルスだとかすれ違いだから消えろ
0659デフォルトの名無しさん2010/10/03(日) 21:01:49
>>658
すんませんでした、もう何もかも上手くいかないんで大学止めます。
限界です。
0660デフォルトの名無しさん2010/10/03(日) 21:01:59
>>657
お前にプログラミングなんて無理
0661デフォルトの名無しさん2010/10/03(日) 21:03:36
>>660
んなことわかってる、今までありがとう、脳に障害があるんだと思うわ。
病院行ってくる。
0662デフォルトの名無しさん2010/10/03(日) 21:05:02
流石にネタだろ、
ネタじゃないならコンパイラを手動インスコする所から始める入門書やっとくべき
0663デフォルトの名無しさん2010/10/03(日) 21:07:51
>>662
ネタじゃない、発達障害なんだよ、ごめんな。
暗記だけは得意だからガリガリ勉強して大学受験は何とかクリアできて
国立現役だよ。
癇癪起こしてマウス3台破壊したし・・

cygwinダウンロード1時間で1%だってよ・・
you tubeの動画も全く見れなくなったし・・
0664デフォルトの名無しさん2010/10/03(日) 21:10:39
悪い、こうやって自分語りするのも発達障害だと医者から言われた。
しばらくROMりますね。
0665デフォルトの名無しさん2010/10/03(日) 21:11:38
ファイアーウォールソフト入れておくべきだったね
0666デフォルトの名無しさん2010/10/03(日) 21:11:48
Cygwin使わせるとか鬼畜。
Cやるなら、今はWindowsにVisualStudio一択っしょ?
大学は金あるんだから、交渉してサクッと買ってもらえよ。
0667デフォルトの名無しさん2010/10/03(日) 21:12:24
ttp://sourceforge.net/projects/mingw/files_beta/
ここの
Looking for the latest version? Download mingw-get-inst-20100909.exe (582.1 KB)
をダウンロードしてインスコしなさい、CygwinはなんちゃってLinux環境だから
Cygwinで書いたコードがLinuxでコンパイル通らないなんて事にも普通になる、
Cygwinにこだわる必要ないよ。
0668デフォルトの名無しさん2010/10/03(日) 21:12:38
ちょっと見ない間に、暗号君が知的障害者にグレードアップしとる…
0669デフォルトの名無しさん2010/10/03(日) 21:18:35
でもお前この話するとココキュウってなるぜ


C言語として  ごみ


暗号としては?
0670デフォルトの名無しさん2010/10/03(日) 21:19:42
大学の教授は大抵何年か過去からタイムリープしてきてるからひどい環境とかコンパイラとか平気で指定してくるよ
0671デフォルトの名無しさん2010/10/03(日) 21:19:47
>>668
暗号君って何ですか?
知識と趣向だけで繕って何とか生きていけるのが発達障害者です。
知的障害者になれれば誰かに面倒見てもらえるのに。

>>667
Unix環境を想定したプログラミングの練習何で別に処理系は細かい
事はいいそうです。


今cygwinが2%dwonloadです、2時間ですね。
0672デフォルトの名無しさん2010/10/03(日) 21:21:31
暗号君は我が強すぎて正直キモい
0673デフォルトの名無しさん2010/10/03(日) 21:23:45
Linuxなら初めから全部環境入ってるのに
0674デフォルトの名無しさん2010/10/03(日) 21:23:58
自分を自慢し褒めてもらいたがってる、たいした男じゃないわ。
0675デフォルトの名無しさん2010/10/03(日) 21:24:32
>>666
大学のPCはダブルブートしてて、プログラミングの授業はlinux環境でgccだよ
0676デフォルトの名無しさん2010/10/03(日) 21:25:14
ごめんデュアルブートのことをダブルブートって言っちゃった
0677デフォルトの名無しさん2010/10/03(日) 21:26:09
>>673
環境とかどうやら細かい事は知らんが、そういうレベルに達していない。
単純なプログラムの練習すらできない状態なんです。

>>672
慰めて
0678デフォルトの名無しさん2010/10/03(日) 21:27:44
>>667
英語か・・
挫折しますた

やっぱcygwinで頑張ってみます。ダウンロードしなくても
プログラミングの練習ができる簡易ツールみたいなもんない
ですよねぇ?
0679デフォルトの名無しさん2010/10/03(日) 21:29:18
>>678
codepad
http://codepad.org/

Ideone.com
http://ideone.com/
0680デフォルトの名無しさん2010/10/03(日) 21:30:47
結局のところイデオンとターンAってどっちが強いんだろう
0681デフォルトの名無しさん2010/10/03(日) 21:31:46
ターンA
0682デフォルトの名無しさん2010/10/03(日) 21:32:33
>>679
scanfできないです・・・
0683デフォルトの名無しさん2010/10/03(日) 21:35:38
ボーランドのコンパイラと「C言語を始めよう」ってIDE使え
0684デフォルトの名無しさん2010/10/03(日) 21:36:43
マニュアルがあるcygwinで頑張ってみます。4日ダウンロードしっぱなしだと
やっぱPCによくないですか?
0685デフォルトの名無しさん2010/10/03(日) 21:38:36
Linuxにしとけ。cygwinを使うと悪い方向に向かうと出ている
0686デフォルトの名無しさん2010/10/03(日) 21:39:02
まえは雑誌の付録にCDから起動するlinuxとかあったけど、
最近はそういうのないのかね。
0687デフォルトの名無しさん2010/10/03(日) 21:42:06
>>682
http://ideone.com/Q71bz
0688デフォルトの名無しさん2010/10/03(日) 21:42:31
Linuxダウンロードして何を使ってソースの実行したらいいんですか?
よくわかりません。
0689デフォルトの名無しさん2010/10/03(日) 21:43:39
>>687
ありがとうございます、cygwinで頑張ってみようと思います。
そろそろスルーしていいですよ、他質問者さんどうぞ。
0690デフォルトの名無しさん2010/10/03(日) 21:50:25
またきたらすいません><
では寝ます。
0691デフォルトの名無しさん2010/10/03(日) 21:51:11
そのまま目覚まさなければいいのに
0692デフォルトの名無しさん2010/10/03(日) 21:55:54
今試したけど俺はDefault設定のまま20分でインスコ完了したんだけど、
なんでそんなに遅いんだ?、ADSL1.5Mでもそんなに遅くならないだろ。
0693デフォルトの名無しさん2010/10/03(日) 22:10:54
>>640
>?つまらないおおげさな ID やハンドルを使わない。
http://cruel.org/freeware/hacker.html

>?そしてそう名乗っているヤツを相手にして時間を無駄にしてもいけません。
しまった。
0694デフォルトの名無しさん2010/10/03(日) 23:11:20
Cにあんまり関係ないんですけど
ttp://www.poverty.jeez.jp/loda/img/iyan04469.jpg

なんで?
06956942010/10/03(日) 23:12:50
分かりにくいので…

Visual Studioで関数を使うときに引数って上半分の感じででるじゃないですか
でもなぜかfloat zの部分が出ないんですよ…
なぜですかね
0696デフォルトの名無しさん2010/10/03(日) 23:21:42
見てるクラスが違う
06976942010/10/03(日) 23:37:22
なんか知らないけど次は出た
???

ワケ分からん
0698デフォルトの名無しさん2010/10/03(日) 23:52:25
しめやでも、てんじんだ。
0699デフォルトの名無しさん2010/10/03(日) 23:54:09
>>698
けるめんけっwww
0700デフォルトの名無しさん2010/10/04(月) 00:01:54
>>697
VSのインテリセンスが壊れるなんて良くあること
どうしても更新されなかったら.ncbファイルを一度消せばいいよ
0701デフォルトの名無しさん2010/10/04(月) 00:06:04
おはよう
>>692
all install にしたよ。
まだ0%だ

install from internet以外だと
installできないし、no packages foundってなるから。
何でかわからん。

cygwin以外じゃ絶対だめなんで^^
0702デフォルトの名無しさん2010/10/04(月) 00:08:46
2時間睡眠とかありえんから
0703デフォルトの名無しさん2010/10/04(月) 00:10:14
さすがにもう話題がC言語のスレじゃないんで・・・
暗号君が消えてくれないなら
俺のほうが去ることにする。じゃぁな。
0704デフォルトの名無しさん2010/10/04(月) 00:16:58
二度と返ってくるなよ
0705デフォルトの名無しさん2010/10/04(月) 00:30:22
× 返る
○ 帰る
0706デフォルトの名無しさん2010/10/04(月) 01:39:34
Cスレ的にはreturnは返るでいいんじゃね?w
0707デフォルトの名無しさん2010/10/04(月) 01:41:00
二度と返ってこないのも嫌だな
0708デフォルトの名無しさん2010/10/04(月) 01:51:11
×Never return.
○Never come back.
0709デフォルトの名無しさん2010/10/04(月) 01:52:18
returnじゃなくてexitしたんだろ
0710デフォルトの名無しさん2010/10/04(月) 01:52:25
yieldじゃね?
0711デフォルトの名無しさん2010/10/04(月) 02:30:15
farawayじゃないかな
0712デフォルトの名無しさん2010/10/04(月) 02:37:10
エブリアワーおはよう

寝て起きたら10%しかdownloadしてませんでした・・
gcc やa.exeのkbがでか過ぎます。
PCをリカバリーに出すんで、しばらくここには来ません
ありがとうございました。
0713デフォルトの名無しさん2010/10/04(月) 02:51:06
ウイルスは本当に怖いね、ファイル検出しただけじゃ分からんときがある
0714デフォルトの名無しさん2010/10/04(月) 03:26:24
ナローバンドと化石PCじゃ、2chの回答者との話が噛み合わない
0715デフォルトの名無しさん2010/10/04(月) 10:13:07
ふぉふぉ
0716デフォルトの名無しさん2010/10/04(月) 16:59:08
#include <stdio.h>

int main<void>
{
int suuti = 10;
if (suuti) printf("%d\n",suuti);
return 0;
}

このコードどこが違うの?
苦Cの開発環境のコンパイラでエラーになっちゃう。
どこも間違えてないはずなんだけど…。
0717デフォルトの名無しさん2010/10/04(月) 17:01:28
志村ー括弧括弧!
0718デフォルトの名無しさん2010/10/04(月) 17:02:16
眼科に行ったほうがいいな
0719デフォルトの名無しさん2010/10/04(月) 17:05:40
苦Cってなんだかわからないけど、エラーメッセージに行番号は出てないの?
0720デフォルトの名無しさん2010/10/04(月) 17:17:31
>>718
マジか。
>>719
どうやら三行目に;を忘れてるらしい。
でもmain関数の宣言に;なんて使わない気がするんだ…。
0721デフォルトの名無しさん2010/10/04(月) 17:18:50
誤 int main<void>
正 int main(void)
こうじゃね
0722デフォルトの名無しさん2010/10/04(月) 17:25:32
>>721
ごめんなさい。僕が馬鹿でした。
思いっきり殴ってください。
1日寝て無いのが原因だな…。とにかくありがとう。
0723デフォルトの名無しさん2010/10/04(月) 17:28:55
クソッ モニタ殴っちまった
0724デフォルトの名無しさん2010/10/04(月) 17:50:12
たぶんエラーメッセージに;が無いってでたんだろうけど
Cのエラー内容はあまりそのまんま信じない方がいい
0725デフォルトの名無しさん2010/10/04(月) 17:55:50
ひょー
0726デフォルトの名無しさん2010/10/04(月) 18:30:44
まあいいじゃん。
そうやって少しずつ進歩してけばいいよ。
0727デフォルトの名無しさん2010/10/04(月) 19:21:32
こわれるから
0728デフォルトの名無しさん2010/10/04(月) 19:26:15
うん
0729デフォルトの名無しさん2010/10/04(月) 22:37:10
苦Cで勉強しようなんてのが躓きの第一歩だな。
あのサイトは、苦しんでやっとCをまともに使えるようになった人間が見に行って脱力する為にあるようなもんだ。
0730デフォルトの名無しさん2010/10/05(火) 00:18:44
exe の 0x76f87f1a でハンドルされていない例外が発生しました: 0xC0000005: 場所 0xc0000004 を読み込み中にアクセス違反が発生しました。

って事だから何か初期化し忘れた変数があるって思っていい?
0731デフォルトの名無しさん2010/10/05(火) 00:22:46
>>730
ソースも晒さずにエスパーじゃあるまいしわかるかいっての
0732デフォルトの名無しさん2010/10/05(火) 00:29:54
>>730
そのエラーはアクセスしちゃ駄目なとことにアクセスしたときによく起こる
配列はみ出したり、確保してないポインタ使ったり
0733デフォルトの名無しさん2010/10/05(火) 00:30:04
ソースがあまりに多くてアップは出来ない量なんです
0734デフォルトの名無しさん2010/10/05(火) 00:43:53
>>733
じゃ、せめてマップファイルだけでもアップしろ。
0735デフォルトの名無しさん2010/10/05(火) 01:04:16
デバッカで動かせばどこで止まってるかくらいすぐ分かるだろうに
0736デフォルトの名無しさん2010/10/05(火) 04:45:05
>>730
0xC0000005は STATUS_ACCESS_VIOLATION だ。
そして0xC0000004は STATUS_INFO_LENGTH_MISMATCH の可能性が高い。
Win32-APIとかの使い方を間違えたんジャマイカ?
戻り値や引数を確認汁。続いてそれらの値が間違ってないか確認汁。
エラーハンドリングが無いなら、それを書くだけで解決することもある(失敗箇所が分かる)。
0737デフォルトの名無しさん2010/10/05(火) 04:49:16
ないファイルを読み込もうとしたか
書き込めないのに書き込もうとしたか
とか?
0738デフォルトの名無しさん2010/10/05(火) 04:55:02
追記で申し訳ない。もう一つ可能性。
WindowsのAPIは構造体の先頭にその構造体のサイズを代入して
引数が正しい構造体かチェックを行うようになっている。
hoge.cbSize=sizeof HOGE; とか、あるいは直値で入れる場合もある。
それを入れ忘れてるか、間違った値になってるんじゃないか?
そういう場合にNTSTATUSはSTATUS_INFO_LENGTH_MISMATCH(0xC0000004) になるような気がする。

ttp://accelart.jp/blog/NTSTATUSErrMsgJa.html
0xC00000XXはエラーコードだから、そこから意味を逆引きできる。
0739デフォルトの名無しさん2010/10/05(火) 07:10:13
#include<stdio.h>
void sum(int a, int b,int *c, int *d)
{
*c= a+b;
*d=(a > b) ? a-b : b-a;
}
int main(void)
{
int na,nb;
int wa=0,sa=0;
puts("二つ");
printf("整数A");scanf("%d",&na);
printf("整数B");scanf("%d",&nb);
sum(na, nb, &na, &nb);
printf("和は%d,差は%d",wa,sa);
return 0;
}
これプログラミングの本に乗ってるソースなんだけど
ボーランドで実行して
34
23

和0,差0とポインタが読み込まれてないんですが。
どういうことでしょう??
本のソース移しただけなのに
0740デフォルトの名無しさん2010/10/05(火) 07:14:47
sum(na, nb, &wa, &sa);
0741デフォルトの名無しさん2010/10/05(火) 07:54:00
南部はさ・・・寒
0742デフォルトの名無しさん2010/10/05(火) 08:40:42
う〜寒
0743デフォルトの名無しさん2010/10/05(火) 08:44:59
#define で文字に数字を指定して
#define HOGE 1
とする時ってどの範囲で有効ですか?
0744デフォルトの名無しさん2010/10/05(火) 08:49:25
>>743
そのソース内全部
その#defineの後に#includeがあればそこにも展開される
あとは#undefineしてたら話は別
0745デフォルトの名無しさん2010/10/05(火) 08:57:39
>>744
ありがとうございました!
下で#includeしてたらそこでも有効になるとは知りませんでした
そのソースで#include NULl 0してないのに
たまにNULLがどこでも0になってる時があるのですがそういうことだったのですね!ありがとうございました!
0746デフォルトの名無しさん2010/10/05(火) 11:27:44
展開される時点で参照されるから、それまでに定義されていればよい。

#define AA BB
#define BB 1

int a = AA; // 正しく1になる。
0747デフォルトの名無しさん2010/10/05(火) 11:31:01
ちなみにこのdefine文は入れ替えても結果はおなじになる
0748デフォルトの名無しさん2010/10/05(火) 11:52:45
こうですか?判りません。
#define BB AA
#define 1 BB
0749デフォルトの名無しさん2010/10/05(火) 11:54:58
#define BB1
#define AA BB
ってことじゃないの?
0750デフォルトの名無しさん2010/10/05(火) 12:54:05
>>748
>>749
馬鹿ばっかり
0751デフォルトの名無しさん2010/10/05(火) 14:21:40
同意
0752デフォルトの名無しさん2010/10/05(火) 14:24:04
ドヤ顔でつまらない事を言いだした>>747が元凶。
0753デフォルトの名無しさん2010/10/05(火) 16:23:28
if(!i%3)とif(i%3==0)の解釈の違いがよくわかりません・・・
07547532010/10/05(火) 16:24:12
VC++2008です。よろしくお願いします。
0755デフォルトの名無しさん2010/10/05(火) 16:29:00
単項演算子の優先順位のが高いのでiが先に評価されるようです。スレ汚し失礼しました。
0756デフォルトの名無しさん2010/10/05(火) 22:51:12
勉強用とか音楽とかワンセグもOK 無線LAN接続なら無料
結構安いと思うんだけど?
お前ら的にはあり?


IS01 1円スタート 即決有
http://page9.auctions.yahoo.co.jp/jp/auction/k134019945
http://page8.auctions.yahoo.co.jp/jp/auction/h145981541
http://page11.auctions.yahoo.co.jp/jp/auction/n91104112
http://page10.auctions.yahoo.co.jp/jp/auction/m77370908
http://page2.auctions.yahoo.co.jp/jp/auction/b113651808

IS02 1円スタート 即決有
http://page11.auctions.yahoo.co.jp/jp/auction/n93102178
http://page2.auctions.yahoo.co.jp/jp/auction/b113622828
http://page11.auctions.yahoo.co.jp/jp/auction/n92987886
0757デフォルトの名無しさん2010/10/05(火) 22:53:52
>>756
最低落札価格ありで1円スタートって、なんかバカにされてつみたいだ。
0758デフォルトの名無しさん2010/10/05(火) 23:18:07
そうだ、昔コンパイラと言ったらこういう箱のことだったんだ。
http://page18.auctions.yahoo.co.jp/jp/auction/w55210746

今は実体がない。
0759デフォルトの名無しさん2010/10/05(火) 23:22:25
またまたご冗談を
0760デフォルトの名無しさん2010/10/06(水) 00:14:20
>>758
♂に見えた
0761デフォルトの名無しさん2010/10/06(水) 00:17:12
コンパイラがハードなわけねーだろワロタwww
0762デフォルトの名無しさん2010/10/06(水) 00:21:02
ワシが学生だった頃はパンチカードを電算室に持って行って云々
0763デフォルトの名無しさん2010/10/06(水) 00:41:52
>>640
>?つまらないおおげさな ID やハンドルを使わない。
http://cruel.org/freeware/hacker.html

>?そしてそう名乗っているヤツを相手にして時間を無駄にしてもいけません。
し、しまった。
0764デフォルトの名無しさん2010/10/06(水) 05:29:58
long get_duration() {
long time = ctx->duration * 1000;
return time;
}
と
long get_duration() {
return (long) ctx->duration * 1000;
}
では戻り値が違うのですが、なぜですか?
0765デフォルトの名無しさん2010/10/06(水) 05:37:27
>>764
上は
(long)(ctx->duration * 1000)

下は
(long)(ctx->duration) * (1000)

どうせctx->durationが浮動少数なんだろう?
0766デフォルトの名無しさん2010/10/06(水) 05:37:38
前者は計算自体はintのまま行ってるから
0767デフォルトの名無しさん2010/10/06(水) 05:40:30
ctx->durationがどんな型なのか分からないと
0768デフォルトの名無しさん2010/10/06(水) 07:16:50
a
0769デフォルトの名無しさん2010/10/06(水) 07:17:36
このスレすぐレス返って来るねw
0770デフォルトの名無しさん2010/10/06(水) 10:13:45
く〜ぴ〜
0771デフォルトの名無しさん2010/10/06(水) 16:28:49
>>769
だって質問の程度が低いんだもん
0772デフォルトの名無しさん2010/10/06(水) 16:36:41
レベルが低いと言ったり高度すぎると言ったり。
わがままな回答者だなw
0773デフォルトの名無しさん2010/10/06(水) 17:38:42
>>772
同じ質問に対して言ってるんじゃないだろ。
お前は質問によってレベル変わってることもわからんのか。
0774デフォルトの名無しさん2010/10/06(水) 17:47:36
画像処理のプログラムです

pixel **img;
〜〜〜〜
img[y][x].r = 〜
img[y][x].g = 〜
img[y][x].b = 〜

このような変数が用意されていて、
位置(x,y)のピクセルの
ある一色について処理する関数
を作りたいのですが
色をどうやって引数にするのかがわかりません
どなたか教えてください
0775デフォルトの名無しさん2010/10/06(水) 17:52:28
まず画像をどういう方法で取り込むつもりなんだ
0776デフォルトの名無しさん2010/10/06(水) 17:55:58
>>775
netpbmを使っています
取り込みはちゃんと出来ています
0777デフォルトの名無しさん2010/10/06(水) 18:18:37
画像フォーマットを調べるかライブラリにそういう処理があるか調べたら
0778デフォルトの名無しさん2010/10/06(水) 18:26:43
>>777
各色を取り出す関数というものがあるのですが、
その関数も色ごと別々に作られているので無意味です

仕方ないので0→赤、1→緑、2→青のように数字をあてて
その数字を引数にして
関数内で場合分けすることにします
(結局同じ処理を3回書かなければならなくなりますが。。。)

これより良い方法があれば是非教えてください
0779デフォルトの名無しさん2010/10/06(水) 18:33:45
>>774
何を聞きたいのかいまいちわからんが

void Func ( pixel* p ){
p->r = 0 ;
p->g = 0 ;
p->b = 0 ;
} ;
Func( &img[y][x] ) ;

か

void Func ( pixel** p, int x, int y ){
p[y][x].r = 10 ;
p[y][x].g = 10 ;
p[y][x].b = 10 ;
} ;
Func(img, x, y);

とかそういうことじゃなくて?
0780デフォルトの名無しさん2010/10/06(水) 18:36:45
うまく質問ができない奴は
そもそも何が問題なのか理解できていない。
0781デフォルトの名無しさん2010/10/06(水) 18:42:42
>>779-780
説明が下手ですみません

色ごとのフィルタ処理をしたいのです
文法無視で簡単に書くとこんな感じです

float func(int x, int y, int clr){
return ( img[y][x+1].clr - img[y][x-1].clr );
}
red = func(i,j,r);
grn = func(i,j,g);
blu = func(i,j,b);
0782デフォルトの名無しさん2010/10/06(水) 18:45:01
>>774
>色をどうやって引数にするのかがわかりません
func(pixel clr) でいい。
func(unsigned char red, unsigned char green, unsigned char blue) でも別にいいけど。

>pixel **img;
>〜〜〜〜
>img[y][x].r = 〜
って、コンパイル通らないだろ。
pixel img[HEIGHT][WIDTH];
img[y][x].r = 〜
が配列の使い方。
WIDTHの宣言があるから、img[y][x]というアクセスを*(img + y * WIDTH + x)だと解釈できる。
0783デフォルトの名無しさん2010/10/06(水) 18:49:43
>>782
配列はちゃんとアロケートしているので問題ありません

func(pixel clr)ではおかしくないですか?
0784デフォルトの名無しさん2010/10/06(水) 18:59:36
>>781
あぁそういうことか。
offsetof()を使えば統一して書けるけど、俺は>778の方がいいと思う。

>>784
コンパイラがWIDTHを知らないのにどうやってimg[y][x]でアクセスできるの?
0785デフォルトの名無しさん2010/10/06(水) 19:16:03
>>784
offsetof知りませんでした
これ使えば出来そうですね!
ありがとうございました

HEIGHT,WIDTHは
画像を読み込む際にライブラリの関数によって取得済みです
説明が足りずすみません
0786デフォルトの名無しさん2010/10/06(水) 19:25:37
int ** arr = (int **)malloc(HEIGHT * sizeof(int *));
for (int y = 0; y < HEIGHT; ++y) {
arr[y] = (int *)malloc(WIDTH * sizeof(int));
}
これでarr[y][x]でアクセスできるのか。(arr[y])[x]なわけか。すんませんでした。
0787デフォルトの名無しさん2010/10/06(水) 22:39:05
いい加減、韓国からノーベル賞受賞者出せよ
0788デフォルトの名無しさん2010/10/06(水) 22:40:21
やっぱいまのなしで
0789デフォルトの名無しさん2010/10/06(水) 22:44:13
ノーベル賞に値する研究成果があればいずれ認められるよ
0790デフォルトの名無しさん2010/10/06(水) 22:48:58
そんなもの無いよな
0791デフォルトの名無しさん2010/10/06(水) 22:54:41
ノーベル化学賞を受賞したからって何か変わるの?
一気に億万長者になるの?
一気に人類の化学歴史が一変するの?
何か発展するの?
国力が上がるの?
国が無敵になるの?
国民が豊かにあんるの?
国民ゼンタイが頭がいいことの証明になるの?
ならないのでは?何でそんなに必死になって喜んでいるのか分からない。
ノーベル賞のメインは平和賞。すべての学問は平和賞に通じている。
世界平和に通じている。
だからノーベル平和賞以外はさほど意味は無い。
そしてノーベル平和賞では韓国日本はイーブンで対等だ。
0792デフォルトの名無しさん2010/10/06(水) 22:57:56
>一気に億万長者になるの?
なるよ
0793デフォルトの名無しさん2010/10/06(水) 22:58:10
信頼できる筋からの情報によれば、
今年、韓国人は、ノーベル物理学賞一人、医学生理学賞二人、来年のフィールズ賞一人、ガウス賞一人、受賞する模様
0794デフォルトの名無しさん2010/10/06(水) 23:10:32
韓国人は事実を自分の都合のいいほうに捻じ曲げるから、学問には向かない
0795デフォルトの名無しさん2010/10/07(木) 00:23:24
数字の処理のプログラムで、
int型x,y,zがあったとしたら、xとyがscanfにより数字を格納、zはxとyの差をprintfにより出力するためのものとします。

この時、
z = x - y
とすると、x=100、y=150の時にzは-50となります。

zを-なしで50と出力したいのですが、どうすればよいでしょうか?
0796デフォルトの名無しさん2010/10/07(木) 00:27:02
2つを足してから小さいほうの2倍を引けばいい。
0797デフォルトの名無しさん2010/10/07(木) 00:27:28
if(z < 0) z = -z;
とか
if(x > y) z = x - y;
else z = y - x;
とか
0798デフォルトの名無しさん2010/10/07(木) 00:27:59
>>795
if (x > y)
z = x - y;
else
z = y - x;
はどうですか?
0799デフォルトの名無しさん2010/10/07(木) 00:29:43
どちらが大きいのか比べる部分つくりゃよくね?
0800デフォルトの名無しさん2010/10/07(木) 00:30:19
z = abs(x - y);
0801デフォルトの名無しさん2010/10/07(木) 00:33:17
printf("%d\n", z > 0 ? z : z * -1);
08028012010/10/07(木) 00:40:31
こっちか

z = x > y ? x - y : y - x;
08037952010/10/07(木) 00:41:58
>>796-802


どうも2つを比較して・・・という考えにいって、
まったくでてきませんでした。
どうもありがとうございました。
0804デフォルトの名無しさん2010/10/07(木) 01:00:29
ばかばっか
0805デフォルトの名無しさん2010/10/07(木) 01:25:39
1の補数表現の環境だったら符号ビットだけ固定してやればいい。
0806デフォルトの名無しさん2010/10/07(木) 01:31:45
>>804のようなタイプの馬鹿が一番終わってることは言うまでもなかった
0807デフォルトの名無しさん2010/10/07(木) 02:30:07
電子の妖精たんに何てこというんだよ
0808デフォルトの名無しさん2010/10/07(木) 04:23:44
char *aaa = "10000";
char bbb[2];

aaaに格納されている10000を、bbb[0] == 0x10、bbb[1] == 0x27となるように代入したいのですが、
何かよい方法はありますか?
0809デフォルトの名無しさん2010/10/07(木) 04:29:28
unsigned int i;
i=atoi("10000");
bbb[1]=i/256;
bbb[0]=i;
0810デフォルトの名無しさん2010/10/07(木) 05:26:28
char *aaa = "1000000";

union u{
int a ;
unsigned char bbb[4] ;
} ;

u t ;
t.a = atoi(aaa) ;

printf ( "%x, %02x %02x %02x %02x\n", t.a, t.bbb[0], t.bbb[1], t.bbb[2], t.bbb[3] ) ;
0811デフォルトの名無しさん2010/10/07(木) 05:36:45
int a=atoi("10000");
memcpy ( bbb, &a, 2 ) ;
0812デフォルトの名無しさん2010/10/07(木) 07:14:38
エンディアンに依存しないのは>809だけか。
0813デフォルトの名無しさん2010/10/07(木) 13:31:06
「エンディアン」などという言葉は無い。
0814デフォルトの名無しさん2010/10/07(木) 13:37:39
言葉はあるだろw
0815デフォルトの名無しさん2010/10/07(木) 13:52:25
>>813
あるよ
0816デフォルトの名無しさん2010/10/07(木) 18:53:28
なんだよインディアンって
0817デフォルトの名無しさん2010/10/07(木) 18:54:46
ウソつかない存在だこのボケ!
0818デフォルトの名無しさん2010/10/07(木) 18:56:13
ケツもふかないぞ
0819デフォルトの名無しさん2010/10/07(木) 19:21:18
ビットの並び順のことを表す単語ではないな。エンディアン。
誤解してるやつ多いんだが。
0820デフォルトの名無しさん2010/10/07(木) 19:24:48
ビットオーダー
バイトオーダー

これだけで現場では大抵通じるね。
0821デフォルトの名無しさん2010/10/07(木) 19:29:41
bbb[0] = i & 0x00FF;
bbb[1] = (i & 0xFF00) >> 8;

と書いて意図どおりに動作しない環境ってあるの?
0822デフォルトの名無しさん2010/10/07(木) 19:43:07
何を意図してるかによる。
0823デフォルトの名無しさん2010/10/07(木) 19:46:28
>>821
それこそがバイトオーダー
0824デフォルトの名無しさん2010/10/07(木) 19:46:29
ふぅ
0825デフォルトの名無しさん2010/10/07(木) 19:49:48
>>823
間違えて理解してるようだな
0826デフォルトの名無しさん2010/10/07(木) 19:54:36
ビットオーダーって今回の話に関係あんの?
0827デフォルトの名無しさん2010/10/07(木) 19:55:37
そもそも愛が符号付きだと動作は処理系によって異なる。
bbb[1] = ((unsigned int)i & 0xFF00U) >> 8U;
0828デフォルトの名無しさん2010/10/07(木) 20:06:46
いまどきintが16ビットの環境なんて考えなくていいんじゃ
0829デフォルトの名無しさん2010/10/07(木) 20:08:48
そもintが16bitなら0xFF00の型はunsigned intなわけで
0830デフォルトの名無しさん2010/10/07(木) 20:14:19
つかdefinで

s8
u8
s16
u16
s32
u32

とか作っとけばよくね?
でintは指定しない。
0831デフォルトの名無しさん2010/10/07(木) 20:30:43
え?なんだって?
0832デフォルトの名無しさん2010/10/07(木) 20:31:45
archに自動であわせるなら、intの方が
0833デフォルトの名無しさん2010/10/08(金) 01:33:23
>>830
stdtypes.h
0834デフォルトの名無しさん2010/10/08(金) 01:43:01
速読でC言語マスターできますか?
0835デフォルトの名無しさん2010/10/08(金) 01:55:43
反復演習の方が
0836デフォルトの名無しさん2010/10/08(金) 01:56:10
習うより慣れろ
0837デフォルトの名無しさん2010/10/08(金) 01:58:26
速読は理学書には効果ない
0838デフォルトの名無しさん2010/10/08(金) 02:01:03
linuxで大量の静止画をpng出力するアプリを作っていますが、
このpngの出力を動画にしたいと思っています。
linuxで動画を作成する場合、どのライブラリを使えばいいでしょうか?

動画はとりあえず無圧縮でOKです。
Windowsでの作成方法でも良いです。ぜひ教えてください。
よろしくお願いします。
0839デフォルトの名無しさん2010/10/08(金) 02:15:54
>>838
無圧縮でいいなら
AVIのヘッダー作って画像の色データを連結して保存していけばいいだけじゃ?
ヘッダーの作成がちょいメンドイけど音声無しならそんなでもないはず
0840デフォルトの名無しさん2010/10/08(金) 02:46:47
ffmpeg -f image2 で読み込めるかも
0841デフォルトの名無しさん2010/10/08(金) 06:50:00
つimagemagick

> convert *.png hoge.mpg
でいけたと思う。
バージョンによってはなんかおかしくなるけど。
0842デフォルトの名無しさん2010/10/08(金) 07:49:40
ゲーム作るのに必要な知識ってどのくらい?
一応アルゴリズム以外は勉強したんだけど、復習しときたい。
0843デフォルトの名無しさん2010/10/08(金) 07:56:29
>>842
ゲームによる
ブロック崩しとかなら基本やったらもうできるだろ
0844デフォルトの名無しさん2010/10/08(金) 09:10:44
ゲーム作るならC++、DirectX、Lua、線形代数あたりは必須かな。あとは知識が足りなくなったら付け足す感じで
0845デフォルトの名無しさん2010/10/08(金) 09:10:58
>>842
君が作ろうとしているであろうゲームは
君が一生努力しても無理
0846デフォルトの名無しさん2010/10/08(金) 11:29:30
引数指定って何のことですか?
引数を指定して実行とか良く意味がわからない。

プログラム上の実、仮引数はわかるけど。
0847デフォルトの名無しさん2010/10/08(金) 11:35:50
ウィンドウズで定義されているm128i共用体は、Linuxではどのように
定義されているのですか?知ってる人がいたら教えてください。
0848デフォルトの名無しさん2010/10/08(金) 11:41:05
>>846
コマンドライン引数を指定してプログラムを実行するということじゃないかたぶん
main関数のargvで受け取る引数
0849デフォルトの名無しさん2010/10/08(金) 11:42:07
>>846
main関数の引数
コマンドラインから引数を与えて実行する

例えば
hoge.exe in.txt out.txt

int main(int argc, char *argv[]){

FILE *inFp, *outFp;

inFp = fopen ( argv[1], "r" ) ;
outFp = fopen ( argv[2], "w" ) ;

みたいな
0850デフォルトの名無しさん2010/10/08(金) 11:52:26
コマンドラインの意味が良くわからん・・
コマンドラインの引数?何のことだか・・
0851デフォルトの名無しさん2010/10/08(金) 11:59:18
>>850
それくらいググれよ
Windowsならコマンドプロンプト、Linux系ならshellシェルからファイル名を指定して実行
0852デフォルトの名無しさん2010/10/08(金) 12:12:56
>>847
typedef long long __m128i __attribute__ ((__vector_size__ (16), __may_alias__));
0853デフォルトの名無しさん2010/10/08(金) 12:13:14
>>851
ファイル名って何だ?
0854デフォルトの名無しさん2010/10/08(金) 12:24:14
>>853
vipでやれ
0855デフォルトの名無しさん2010/10/08(金) 12:25:07
しねばいいのに
0856デフォルトの名無しさん2010/10/08(金) 12:26:13
>>853
やめろ
>>851
コマンドライン上で入力して実行したらいいのに
何の意味があるの?引数の指定って。
0857デフォルトの名無しさん2010/10/08(金) 12:30:04
>>849

argv[]←ここに引数を入れるんですね?
0858デフォルトの名無しさん2010/10/08(金) 12:31:16
>>857
それくらいググれよ
しねばいいのに
0859デフォルトの名無しさん2010/10/08(金) 12:33:10
>>858
偽者です
>>857
それは配列だって、アホ。

何のために引数指定して実行するんですか?
0860デフォルトの名無しさん2010/10/08(金) 12:33:39
>>857
人生相談掲示板@BBSPARK
http://life.bbspark.net/
0861デフォルトの名無しさん2010/10/08(金) 12:38:13
>>859
トリップつけろ
0862デフォルトの名無しさん2010/10/08(金) 12:39:39
トリップってなんですか?
08631 ◆tsGpSwX8mo 2010/10/08(金) 12:43:01
>>861
あい


Windowsの場合コマンドプロントですよねぇ。
コマンドプロントから入力,実行できないんですが何が原因でしょう?
コンパイラは5.5です
0864デフォルトの名無しさん2010/10/08(金) 12:44:06
>>862
http://info.2ch.net/guide/faq.html#C7
0865デフォルトの名無しさん2010/10/08(金) 12:45:37
多分ディレクトリの移動とかしてないんだろうなぁ
08661 ◆tsGpSwX8mo 2010/10/08(金) 12:46:45
>>865
どういうことですか?
端折って説明してください
0867デフォルトの名無しさん2010/10/08(金) 12:46:50
>>859
例えばビットマップをjpegに変換するbmp2jpg.exeがあったとしよう
変換したいビットマップファイル名をプログラム内に記述しちゃうと
変換したいファイルを変えるたびにコンパイルしなおさないとだめだよね?
そういうときに変換したいファイル名を引数として渡す
bmp2jpg.exe hoge.bmp のように
bmp2jpg.exeのmain関数はこの引数を受け取って処理をするだけなので再コンパイルの必要がない

こういった使い方のほかに起動オプションを指定、例えば
game.exe w だったらwindowモードで起動
game.exe f だったらフルスクリーンモードで起動みたいな

要は外部から実行動作を切り替えたい時に使う


一々コマンドラインから入力するのが面倒ならバッチファイルに記述すれば良いし、連続実行もできる
バッチファイルとはなんですか?とか聞くなよ
0868デフォルトの名無しさん2010/10/08(金) 12:52:50
>>866
基本的にコマンドプロンプトが見てるのはひとつのフォルダだけなのでそこになければファイル名入れても起動できない
起動した直後は、お前の作ったプログラムのあるフォルダにまず移動させないといけない
0869デフォルトの名無しさん2010/10/08(金) 12:59:00
>>866
コマンドラインから
cd "exeのあるフォルダへのフルパス"

もしくは
exeのあるフォルダにバッチファイル作ってダブルクリックしろ
0870デフォルトの名無しさん2010/10/08(金) 13:32:01
>>866
日本語の勉強からやり直せ
0871デフォルトの名無しさん2010/10/08(金) 13:43:38
           ____      ) Cドライブの全フォルダを環境変数に突っ込んだらどうなるの?っと
        /⌒  ⌒\    ) 
      /( ●)  (●) \  )/⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y丶
     / ::::::⌒(__人__)⌒::::: \
    |      |r┬-|     |
     \       `ー'´     /
     ノ            \
   /´               ヽ                 カ
  |    l   l||l 从人 l||l      l||l 从人 l||l   カ    タ
  ヽ    -一''''''"~~``'ー--、   -一'''''''ー-、.     タ
   ヽ ____(⌒)(⌒)⌒) )  (⌒_(⌒)⌒)⌒))
      ┌┬┬┐┌┬┬┬┐┌┬┬┬┐┌┬┬┬┐
   ,. - ''"| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ρ ̄`l
    ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ノ ̄ ̄

      _____
    /::::::─三三─\            リアルな話すると超便利!!
  /:::::::: ( ⌒)三(⌒)\          わざわざフォルダを移動しなくていい。
  |::::::::::::::::::::(__人__)::::  |  _____ どこからでもexeを走らせることができる。
   \:::::::::   |r┬-|  ,/ .| |        便利さが信じらんないくらい超ヤバイ
   ノ::::::::   `ー'´  \ | |        パソコンがコンビニってくらい便利
0872デフォルトの名無しさん2010/10/08(金) 14:09:01
>>850
OK、オ○コラインと読み替えればいい。
あとはわかるな?w
0873デフォルトの名無しさん2010/10/08(金) 14:24:15
ふふふ
0874デフォルトの名無しさん2010/10/08(金) 16:15:57
あらあら
08751 ◆tsGpSwX8mo 2010/10/08(金) 16:34:56
>>867
何言ってるか全くわかんねw
08761 ◆tsGpSwX8mo 2010/10/08(金) 16:47:54
ファイルを変えるの意味が全く分からんw
あと.exeって何だ?.cじゃないの?
0877デフォルトの名無しさん2010/10/08(金) 16:56:45
狂人の真似とて大路を走らば、即ち狂人なり。
0878デフォルトの名無しさん2010/10/08(金) 16:57:46
クマー
08791 ◆tsGpSwX8mo 2010/10/08(金) 17:06:48
ファイル名をプログラム内に記述w?どういうこと?
ネタとか無しに、プロフェッショナルな事しすぎだろ。
何が起こってるんだ?ガチでネタじゃない。
今四則計算とかのプログラム作ってるけど・・
0880デフォルトの名無しさん2010/10/08(金) 17:22:15
誘導

「スレ立てるまでもない質問はここで 107匹目 」
http://hibari.2ch.net/test/read.cgi/tech/1284736445/
0881デフォルトの名無しさん2010/10/08(金) 17:33:35
まちゃみに比べたらどうってことないうざさだぜ
0882デフォルトの名無しさん2010/10/08(金) 17:37:22
とりあえず疑問を自分でまとめてから書き込もうな。
何が分からないのかが我々に分からないんで。
08831 ◆tsGpSwX8mo 2010/10/08(金) 17:37:28
でもパソコンでインターネットくらいしかしない人に
>>867
言ってもちんぷんかんぷんだろ。
08841 ◆Mjk4PcAe16 2010/10/08(金) 17:41:16
>>883
何故わかったww
0885デフォルトの名無しさん2010/10/08(金) 17:53:08
>>883

だが>>880の意味はわかるだろうて?
0886デフォルトの名無しさん2010/10/08(金) 18:12:48
ここ入門編だろww
入門ってのは実践の前の応用の前の基礎の前だぞ?
どんだけレベル高いスレなんだよw
0887デフォルトの名無しさん2010/10/08(金) 18:22:50
質問が門に入る前のレベルなので半年ほど門に入る努力をしてからお越しください
まずは日本語の読解能力あたりに力をいれてみてはどうでしょうか?
0888デフォルトの名無しさん2010/10/08(金) 18:28:54
>>847
852に書いてあるように共用体で定義されていない。
0889デフォルトの名無しさん2010/10/08(金) 18:30:56
>>886
これまでのこのスレの流れ

Q「家から外出するにはどうすればいいですか?」
A「玄関でドアを開けて外に出て、ドアを閉め鍵をかけてください」
Q「ドアって何ですか?」
A「スレ立てるまでもない質問すれで聞いてください」
Q「鍵って何ですか?」
A「・・・」
0890デフォルトの名無しさん2010/10/08(金) 18:38:29
>>889
ワロタw
0891デフォルトの名無しさん2010/10/08(金) 18:38:51
プログラミングをやるからには誰しもその知識を偉そうに語りたいものです
スレタイからも分かるようにこのスレは、俺に聞け(キリッという衒学の入門編なのです
背伸びも知ったかも出来ないレベルだと話にならないということです
0892デフォルトの名無しさん2010/10/08(金) 18:42:35
知ってる事を偉そうに語る者には碌な甘えん坊がつかない
0893デフォルトの名無しさん2010/10/08(金) 18:45:02
人間について哲学を語りたいならそのためのスレがあるだろ
俺が言ってる意味わかるよな>>892
0894デフォルトの名無しさん2010/10/08(金) 18:45:08
>>892
日本語でおk
0895デフォルトの名無しさん2010/10/08(金) 18:47:18
>>891,892

>>860
0896デフォルトの名無しさん2010/10/08(金) 19:06:29
>>891
苦労せず育ったんだろうな
俺はこーいうの苦手だから、分かった時は頭の中からドーピングが
出て、誰かに教えてあげたい(出来るなら世界で一番分かりやすい
日本語で!!って・・)
それが本当のプログラミング言語なのではないだろうか?
0897デフォルトの名無しさん2010/10/08(金) 19:15:09
>>896
まずは日本語の勉強からだな
0898デフォルトの名無しさん2010/10/08(金) 19:23:24
>>897 オマエモナー
0899デフォルトの名無しさん2010/10/08(金) 19:36:04
ITドカタは低脳です
覚えていてください

あなた低脳ですか? そうならプログラマしかなれません
0900デフォルトの名無しさん2010/10/08(金) 19:37:31
日本語も重要だが、英語をまともに理解できないんでは話にならない。
0901デフォルトの名無しさん2010/10/08(金) 19:46:28
コンパイラのエラーも、まともに読もうとしないのが、最近の流行りでしょ。
0902デフォルトの名無しさん2010/10/08(金) 19:54:34
で?お前らなんでここにいるの?
0903デフォルトの名無しさん2010/10/08(金) 19:55:48
ひまだから
0904デフォルトの名無しさん2010/10/08(金) 19:55:54
哲学的な質問ですな
0905デフォルトの名無しさん2010/10/08(金) 20:17:42
>>877
徒然草とは風流ですな。
0906デフォルトの名無しさん2010/10/08(金) 22:07:58
いや大路を走るくらい別に構わないだろ。
0907デフォルトの名無しさん2010/10/08(金) 22:16:52
>>900
低脳で理解できないんです><
0908デフォルトの名無しさん2010/10/08(金) 23:35:19
まともに理解できるというのは
どういうことなのかね??
0909デフォルトの名無しさん2010/10/09(土) 01:40:28
単語は調べれば分かるが、文法の基本くらいは理解しないと
変な訳し方をして理解できなくなっては困る。
0910デフォルトの名無しさん2010/10/09(土) 01:43:57
このスレや宿題スレなんかを見る限り、英語が理解できてるのは極めて少数だと思うけど
0911デフォルトの名無しさん2010/10/09(土) 02:00:03
デーヴァナーガリーと比べればまだ理解できてる方だろ
繁体>簡体>ラテン>キリール>ギリシャ>アラビア>デーヴァナーガリー
0912デフォルトの名無しさん2010/10/09(土) 02:02:42
出鼻刈り
0913デフォルトの名無しさん2010/10/09(土) 02:06:19
繁体>簡体≒ラテン>キリール≒ギリシャ>>>(越えられない壁)>>>アラビア>>>(越えられない壁)>>>デーヴァナーガリー
0914デフォルトの名無しさん2010/10/09(土) 08:47:20
言語の話をしているのか文字の話をしているのか、どっち途鼬害だ。
0915デフォルトの名無しさん2010/10/09(土) 09:14:14
Cシェルって何ですか?調べても曖昧でわかりくいです
C言語とは別のプログラミング言語なのでしょうか?
0916デフォルトの名無しさん2010/10/09(土) 09:16:13
>>915
先ずはシェルスクリプトで調べてください。
そうすれば解ると思いますが、スレ違いです。
0917デフォルトの名無しさん2010/10/09(土) 09:57:30
>>915
cshlっていうのはシェルのこと
シェルって言うのはwindowsだとcmd.exeとかに当たる
cshの他にbash、zsh、tcshとかがある

windowsではバッチファイルと言うが、unix業界ではバッチの事をシェルスクリプトという
cshのシェルスクリプトの文法は、C言語に似ているってだけの話
0918デフォルトの名無しさん2010/10/09(土) 12:51:49
Cシェルはどこで書いて、どうやってコンパイルすればいいのですか?
0919デフォルトの名無しさん2010/10/09(土) 13:02:32
その程度もわからない人間に説明したって理解できないでしょ
0920デフォルトの名無しさん2010/10/09(土) 13:08:41
bash
これって
バッチって読むの?バッシュって読むの?
0921デフォルトの名無しさん2010/10/09(土) 13:11:11
>>919
たぶん、釣りだと思うよ
0922デフォルトの名無しさん2010/10/09(土) 13:12:38
>>920
バッシュでいいと思う。バッチはbatchだし
0923デフォルトの名無しさん2010/10/09(土) 13:12:40
>>918
>Cシェルはどこで書いて
http://www.tcsh.org/Welcome

>どうやってコンパイルすればいいのですか?
普通にmakeすればよいよ。
0924デフォルトの名無しさん2010/10/09(土) 13:29:06
bashはBourne Again SHellの略
0925デフォルトの名無しさん2010/10/09(土) 14:34:04
なんでこのスレの住人てスルーできないの?
病気なの?
0926デフォルトの名無しさん2010/10/09(土) 14:37:19
スルーしたらツマランやろ
0927デフォルトの名無しさん2010/10/09(土) 14:38:20
罵りから入るのが出来るプログラマーの証
0928デフォルトの名無しさん2010/10/09(土) 14:54:50
>>923
英語読めってのか、このスレはハードル高すぎ
0929デフォルトの名無しさん2010/10/09(土) 14:57:42
突っ込むとこそこなのかなあ?w
0930デフォルトの名無しさん2010/10/09(土) 15:14:54
clock()関数を使ってプログラムの実行時間を計測しようと思うのですが、
ベンチマークとしてこの関数は使えますか?またプログラムのどの位置に
書けばいいのでしょうか。
0931デフォルトの名無しさん2010/10/09(土) 15:17:19
>>930
どの位置にって、計測したい所の最初と最後の箇所なんじゃないの?
0932デフォルトの名無しさん2010/10/09(土) 15:19:28
最初と最後の差を計測するんですか?
トータルの実行時間を値として返すのではないのですか?
0933デフォルトの名無しさん2010/10/09(土) 15:19:33
ストップウォッチで測った方が良いよ
0934デフォルトの名無しさん2010/10/09(土) 15:23:33
>>932
処理に必要なデータを読み込んだり準備する時間は計測に入れたくないこともあるでしょう
全体を測りたい人ばかりじゃないのです
0935デフォルトの名無しさん2010/10/09(土) 15:27:30
>>930
ttp://kzk9.net/column/time.html
0936デフォルトの名無しさん2010/10/09(土) 15:31:03
ふぅ
0937デフォルトの名無しさん2010/10/09(土) 15:35:22
>>932
unix系なら、コマンドのtimeで計れるけど。
0938デフォルトの名無しさん2010/10/09(土) 15:56:11
シェルでtime ./a.exe を実行したときGCCでコンパイルしたほうが時間
は速いのに、clock()で計測するとclの方が早いのはなぜですか。
どちらを正しい実行時間とするのがいいのでしょう。
0939デフォルトの名無しさん2010/10/09(土) 15:57:56
どっちも
0940デフォルトの名無しさん2010/10/09(土) 16:10:20
処理に使ったCPU時間と
実際にかかった処理の時間は違うから
0941デフォルトの名無しさん2010/10/09(土) 17:16:02
> ただし、秒以下の単位を取得するには clock関数を用い、長時間の計測を行う場合には difftime関数を用いてください。これは、clock関数がプロセッサ時間を返却するため返却値の上限が低いためです。
0942デフォルトの名無しさん2010/10/09(土) 17:34:43
>>917
Windows のシェルは explorer だろぼけ。
09439172010/10/09(土) 17:40:36
>>942
そりゃーそうだけど

>Windowsのシェルといえばコマンド・プロンプト(cmd.exe)であるが、
>その機能はUNIXなどのシェルと比較するとまったく貧弱なものである。
@itより

それは、GUIに限った話であって
power shellとかはどう説明する?
0944デフォルトの名無しさん2010/10/09(土) 18:06:00
ふっほっ
0945デフォルトの名無しさん2010/10/09(土) 18:21:40
Explorerはファイルマネージャとしての側面が強い。
ループも制御できないシェルなんてcmd.exe以上の役立たずだ。
0946デフォルトの名無しさん2010/10/09(土) 19:10:50
Cシェル(cygwin bash shell)
でプログラミング書いたら、includeとかいらないんですか?
スクリプトだから簡単でいんですよね?
0947デフォルトの名無しさん2010/10/09(土) 19:12:49
はいはい、この手の釣り質問は以後スルーでよろ。
0948デフォルトの名無しさん2010/10/09(土) 19:13:55
スクリプト言語とC言語は違うと思ったほうが
0949デフォルトの名無しさん2010/10/09(土) 19:15:41
CシェルとC言語は仕様が似てるでしょ?
0950デフォルトの名無しさん2010/10/09(土) 19:25:09
?
0951デフォルトの名無しさん2010/10/09(土) 19:33:35
CシェルってC言語の簡略化でしょ?
0952デフォルトの名無しさん2010/10/09(土) 19:34:34
タートルタートル〜
0953デフォルトの名無しさん2010/10/09(土) 19:37:08
> 今日では C shell はほとんど使われておらず、tcsh、Korn Shell(ksh)、Bourne Again Shell(bash)などに取って代わられた。
0954デフォルトの名無しさん2010/10/09(土) 20:04:42
cygwin bash shell の頭文字とってC shellかと思ってたww
0955デフォルトの名無しさん2010/10/09(土) 20:33:10
とりあえずtcshはC shell系だよ
これでスクリプトまで書いてる人は滅多にいない気もするけど
0956デフォルトの名無しさん2010/10/09(土) 21:28:58
ひっほっ
0957デフォルトの名無しさん2010/10/09(土) 21:58:26
いや、tcshだと一部bsh系の表記も使えるからtcshで書くという人もいなくはない。
でも、その辺は使い捨てにするのが普通だからどうでもいい。

つーか、スレ違いだってばさ。
0958デフォルトの名無しさん2010/10/09(土) 22:08:29
cshで書くのは、スレ違いと言いながら粘着する>>957のような低能だけ。
0959デフォルトの名無しさん2010/10/09(土) 22:41:04
この程度で粘着とか。
0960デフォルトの名無しさん2010/10/10(日) 00:25:25
まだ時々Cシェルスクリプト書いている人は見かける。
BSD系の人に多い。
0961デフォルトの名無しさん2010/10/10(日) 00:36:25
どーでもいい
0962デフォルトの名無しさん2010/10/10(日) 01:14:22
つまり、C言語は駄目ということだな
0963デフォルトの名無しさん2010/10/10(日) 01:15:48
なんで、そんな結論が出る?w

Cシェルがダメだって結論は出ても、
C言語がダメだって結論には絶対ならんだろw
0964デフォルトの名無しさん2010/10/10(日) 01:46:27
じゃあB言語を作るしか
0965デフォルトの名無しさん2010/10/10(日) 01:48:00
SEX言語でいいよ。
0966デフォルトの名無しさん2010/10/10(日) 07:34:08
あるソフトをコンパイルしたらエラーが出て、
該当箇所にこんなコードがあるんですが

FILE *fin = {stdin}, *fout = {stdout};

こういう書き方ってありなんでしょうか?
0967デフォルトの名無しさん2010/10/10(日) 07:41:06
ねーよ。
0968デフォルトの名無しさん2010/10/10(日) 07:59:35
FILE *fin[] = {stdin}, *fout[] = {stdout};
0969デフォルトの名無しさん2010/10/10(日) 08:12:22
とりあえず、ソースのfin/foutをすべて手動でstdin/stdoutに置き換えて解決しました

>>968 同じエラーが出ます
error: 初期化子の要素が定数ではありません

stdin,stdout等はwhich are expressions of type pointer to FILEって書いてるから
FILE*fin = stdin,*fout=stdout;
これで動いて欲しいけど、これもエラー
Cは難しい
0970デフォルトの名無しさん2010/10/10(日) 08:27:14
> FILE*fin = stdin,*fout=stdout;
codepadは通ったよ
http://codepad.org/Xsl26OP0
0971デフォルトの名無しさん2010/10/10(日) 12:05:38
エラーの内容からすると訂正はこうじゃないのか?
FILE*fin, *fout;
fin = stdin;
fout=stdout;

codepadがC99対応なんじゃないかね
試してないけど
0972デフォルトの名無しさん2010/10/10(日) 12:06:52
こうじゃないのか? -> こういう感じじゃないのか
0973デフォルトの名無しさん2010/10/10(日) 12:45:04
FILE * fin = stdin;
FILE * fout = stdout;
0974デフォルトの名無しさん2010/10/10(日) 12:54:41
>>966の書き方でVCもbccも通ったんだが
0975デフォルトの名無しさん2010/10/10(日) 12:57:06
VC++は
#define stdin (&__iob_func()[0])
だからauto変数以外の初期化でエラーになる。
0976デフォルトの名無しさん2010/10/10(日) 13:25:29
966の中括弧の役割が分からんのだが
0977デフォルトの名無しさん2010/10/10(日) 13:43:52
ほふぅ
0978デフォルトの名無しさん2010/10/10(日) 13:44:50
きゅっきゅっ
0979デフォルトの名無しさん2010/10/10(日) 13:44:50
>>974
出先なんで試していないが俺もコンパイル通ると思うぞ。
出来ないって言っている奴は間違えてC++としてコンパイルしているのではないだろうか?
0980デフォルトの名無しさん2010/10/10(日) 13:45:38
かぽぅ〜
0981デフォルトの名無しさん2010/10/10(日) 13:47:17
普通、警告はエラーにするからコンパイルは通らない。
0982デフォルトの名無しさん2010/10/10(日) 15:48:33
ひょひょっ
0983デフォルトの名無しさん2010/10/10(日) 15:50:10
>>978
>>979
乙
0984デフォルトの名無しさん2010/10/10(日) 20:24:35
>>976
要素が増えたときのためのフェイルセーフでしょ。
個人的にはくだらんコーディングルールだなーと思うけど。
0985デフォルトの名無しさん2010/10/10(日) 22:31:10
vcvars32.bat'の設定教えて

0986デフォルトの名無しさん2010/10/10(日) 22:36:17
次スレ立てます
0987デフォルトの名無しさんNGNG?S★(531555)
次スレ立てました
C言語なら俺に聞け(入門編)Part 71
http://hibari.2ch.net/test/read.cgi/tech/1286717824/
0988デフォルトの名無しさん2010/10/10(日) 22:48:11
>>985
インストール時に自動で設定されるだろ。
0989デフォルトの名無しさん2010/10/10(日) 23:19:56
>>985
プログラムの設定関係はそのプログラムのスレでどうぞ。
0990デフォルトの名無しさん2010/10/11(月) 20:19:04
1000なら背が伸びる
0991デフォルトの名無しさん2010/10/11(月) 20:20:00
1000なら彼女が出来る
0992デフォルトの名無しさん2010/10/11(月) 20:21:00
1000なら宝くじが当たる
0993デフォルトの名無しさん2010/10/11(月) 20:21:59
1000なら髪が生える
0994デフォルトの名無しさん2010/10/11(月) 20:23:00
1000なら虫歯が治る
0995デフォルトの名無しさん2010/10/11(月) 21:46:37
995なら明日も晴れ
0996デフォルトの名無しさん2010/10/11(月) 22:56:30
996なら虫唾が走る。
0997デフォルトの名無しさん2010/10/11(月) 23:06:46
997なら彼女ができる
0998デフォルトの名無しさん2010/10/11(月) 23:15:52
998なら寝る
0999デフォルトの名無しさん2010/10/11(月) 23:20:24
乗りなさい
1000デフォルトの名無しさん2010/10/11(月) 23:21:45
C言語なら俺に聞け(入門編)Part 71
http://hibari.2ch.net/test/read.cgi/tech/1286717824/
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。