日付欄の「=」が全角になっているのはム板住人として気になりませんか?
>>230 変数名が数字で始まってるのも、初期化式が式になっていないのも。
Visual Studio .net 2003を持ってるけど、まだその中のVisual C++以外は全く使ってない。 恥か?
恥と思うなら恥なんじゃね?
>>221 >>225 が言い尽くしているが、絵を扱うとか、統計処理をしようとすると、
分かっていると楽。
最近、デジカメで樽型に歪んだ写真を修正するやつをやったけど、sin, cos が
不可避になって、ぐぐって、高校での三角関数を復習したよ。
ちょっとした数学的処理、行列式とか、アルゴリズム事典などにソースが載って
いるが、分からないと怖くて使えないってこともある。
最近は、8バイト整数もあるので、楽だが、4バイトまでのときは、お金の計算
も大変だった。貸し借り別の残高は簡単に溢れた。
事務処理やらやってるプログラマはプログラマだと思っていないし、プログラミングには数学が必須です。
237 :
デフォルトの名無しさん :int 2ch =05/04/02(土) 11:58:00
標準入出力についての質問です。 標準入力と標準出力はリダイレクト出来ますが、標準エラー出力をリダイレクトすることが出来ません。 標準エラー出力をファイルに書き出したいと思っているのですが、何か方法はありますか? よろしくお願い致しますm(_ _)m
239 :
237 :int 2ch =05/04/02(土) 12:19:27
>>238 そんなリダイレクト記号があったんですね(→「2>」)。
どうもありがとうございましたm(_ _)m
174 名前: 仕様書無しさん 投稿日: 2005/03/31(木) 17:52:36 HLSLとGLSLを始めたいのですが、SDKの他に何が必要ですか。 字の感じからして機関車が必要かもしれませんが、 そういわれても懐にそんな余裕はありませんし、走らせることもできませんので あしからず。
ウチの息子はSL好きなのでSLを見に行くことにしました。 中略 息子は「こんなのSLじゃなーい」といって泣き出しましたがSLには違いないはずです 私は父親として何を間違えましたか。
>>236 まあ君がどう思おうと何も変わらないがな。
243 :
デフォルトの名無しさん :int 2ch =05/04/02(土) 14:14:32
数学が とか言ってるやつは何を作っているのかと思えば何も出来ない。 結局はライブラリに頼るだけ。 これのどこが数学なのか 誰でも知ってる公式覚えて数学者のつもりになってるただの馬鹿
>>243 想像力が豊かなのは結構だけど、全ての場合を想定して発言してくださいね。
オマエモナー
246 :
デフォルトの名無しさん :int 2ch =05/04/02(土) 14:29:48
自分は違うとでも言いたげだが何をしたのかどういう実績があったのか問われると何も出ない。 そもそも大した功績のひとつもあるわけでもない
> 大した功績のひとつもあるわけでもない ある。
言えないようじゃ大したモンじゃないな。
> 言えないようじゃ大したモンじゃないな。 言える。 幾何的 Mordell-Lang 予想はオレが解決したんだけど。
それは日本人じゃないな
なんか日付がどんどん意味不明な方向に…
254 :
デフォルトの名無しさん :int 2ch =5年,2005/04/02(土) 15:43:51
アプリの設定ファイルに、キーストロークを記述したいのですが、 キーストロークを記述するための標準的な記法ってありますか? 記法って言うのは、たとえば、Alt-C Shift-Ctrl-Alt-V のような感じ。 UNIX では Emacs で使われている記法が標準なのかな。 Windows では何が標準的かな。
>>246 スレ違いだが、いいことを言う。
樋口一葉は24歳で死んで、お札になっているんだよねえ。たまにしかお目にかからないが。
しかし自分で何も生み出さず、人の作ったものをチョイチョイ改変して実績とか言ってるやつもたまにいるよな。 カンファレンスに毎年行ってて有名人の何とかさんと話している「だけ」のガキとか
そんなに羨ましいのか?
妬み全開のレスですなw
図星だったかw
>>254 リソースファイルに「キーボードアクセラレータ」を定義するときの書き方。
はい!
プログラムはPHPから入って、今C言語をお勉強しようとしてるのですが
PHPにあったexplode(
ttp://php.s3.to/man/function.explode.html )という関数をC言語で実現させようとした場合
やはりstring.hに入っている関数でそういう処理を1から作るものなのでしょうか?
また、仮にそういうライブラリがどこかで公開されてた場合、それも標準ライブラリや機械語を合わせて作られたものなのでしょうか?
>>262 標準ライブラリのstrtokがそれに近いと思う。
でもC++の方がstd::stringがあるぶん文字列処理は楽。boostも便利。
264 :
デフォルトの名無しさん :2005/04/03(日) 00:27:08
通報しますた
>>263 さん
strtok、こんな関数があったんですね気付きませんでした。
教えて頂いたC++のstd::stringとboostを調べていたのですが
C++はすごいですね、細かい処理までできるようで…。
ここまで専門的なプログラム言語は覚えなくていいやと腰が引けてしまいました!
お返事ありがとうございました。
267 :
デフォルトの名無しさん :2005/04/03(日) 03:14:21
DDKはどのように入手したらよいのですか? またいくら位ですか?
MicrosoftのHPでCD注文。確か199$(2万円弱) とはいっても、ウェブを漁れば手に入るかも。
サンクス。意外と安いんですね。 これなら買える。
270 :
デフォルトの名無しさん :2005/04/03(日) 05:57:50
phpでfputsで書き込むファイルのパスを好きなところにするにはどうすれば いいのですか?
あ? 質問の意味がわからんぞ fputsはファイルハンドルに対して出力するだけでパスの指定なんてねーぞ 任意の場所にあるファイルに書き込みたいんならfopenで好きなの開きゃいいだろ
DDKはいつ有料化したんだ?
>>272 少し前に有料化したようだね。
なんで無料にしてくれないんだろう。
274 :
254 :2005/04/03(日) 14:37:02
>>272 MSのHPを見ると、
CurrentOS(WindowsServer2003DDK)のDDKは無料だけど、
WindowsXP SP1DDKは、有料のDDKSuiteにしか入ってないように見える
276 :
デフォルトの名無しさん :2005/04/03(日) 16:13:30
277 :
デフォルトの名無しさん :2005/04/03(日) 16:50:28
プログラムは簡単なのか簡単じゃないのか教えろハゲども。
オマエには簡単じゃないからお家に帰んな
>>277 #include<stdio.h>
void main(void){printf("Hello, World!");}
これの意味がわかれば簡単。
void main(void)
echo Hallow,World
>>279 処理系に依存するコードであることが分かりました
質問です。 Cの構造体の問題なのですが 構造体のメンバにデータを格納するたびにある処理をして、取り出す場合にまた別の処理をするようなのを 構造体自体に持たせたいのです。 と言うのも、その構造体を参照するコードがあまりにも大きいので、1つ1つ処理を追加する余裕がなくなってしまいました。 むちゃな要望だとは思うのですが、どうにか構造体にそのような処理をさせる方法はないのでしょうか? 宜しくお願いします。
285 :
デフォルトの名無しさん :2005/04/04(月) 02:37:04
>>284 #defineを使って再定義してみると、なんとかなりそうで何とかならなそうだなw
代入演算子は再定義できないしなぁ。
>>284 >構造体自体に持たせたいのです。
「データ」と「手続き」は別物だという事は御理解頂きたく。
素直に OOPL 使っとけ。
構造体の該当メンバ名を変更すれば、 参照している部分はコンパイラが指摘してくれる。 あとは、SetA(&Struct, 500);とか、GetA(&Struct)みたいに書き換えていく。
大人しくC++にしてクラス使っとけ
290 :
デフォルトの名無しさん :2005/04/04(月) 10:53:15
「言語の仕様的には、やればできる」が、 「そういう方法を習っていない」から楽な方法しか思いつかないんだよ。 ここにいる連中は。 結局学校で先生に懇切丁寧に手取り足取り教えてもらわないと プログラムの手法ひとつも思いつかないし、やれない。
291 :
デフォルトの名無しさん :2005/04/04(月) 10:58:38
一例では 今あるAPIでは、シェーダ内でアルファブレンディングができない それでもどうしてもしたい,必要である そういう状態のときに、ここで聞いても「諦めろ」としか言われないのと同じこと。 できないなら自分で作るしかない、言語の仕様も自前のシェーダを許容しているからと これを自前のアセンブラシェーダでやったのがジョン・カーマックなわけで Cにしてもそう 自分でライブラリつくろうとかヘッダ作ろうとか思いつかないのは 先生に教えてもらってないから。 先生に教わらないと靴も履けない。
ペーパーテストでは優秀だが応用となるとてんでできないタイプ。
プログラム始めるなら何(言語)がいいですか?
>>293 最初にとはいわんが、Cは通っておくべき道だろう
マジでありがとうございます
296 :
デフォルトの名無しさん :2005/04/04(月) 12:24:02
いきなりCはできますか?
>>291 APIの仕様とCそのものの仕様とはまた別物だろ。
Cではどうがんばっても
>>284 の事は出来ない。
構造体とライブラリは全然次元が違うだろ。
それに出力するアセンブリコードを自前で改変するとかなら出来なくもないが
>>284 は追加する余裕が無くなった(=納期寸前?)ので、手直しする時間がないという状況なのだから
そこで車輪の再開発のような事をするのは本末転倒だろう。
299 :
デフォルトの名無しさん :2005/04/04(月) 13:27:09
Cでタイマー使う方法を伝授願います。
300 :
デフォルトの名無しさん :2005/04/04(月) 13:36:58
余裕が無いのにOOPLで構成しなおせってバカか
その構造体へのアクセサを定義して構造体へのアクセス部分を全部置き換える。
302 :
299 :2005/04/04(月) 13:42:34
というか質問を変更します。 main(){ ConnectProc(); //接続の処理 DownLoadProc();//ダウンロード処理 EndProc();//切断、画面破棄等の終了処理 } 上記のコードだと何故かダウンロードが終わらない間にEndProc();に処理がわたり ダウンロードできていないのに処理が終わってしまいます。 そこで main(){ ConnectProc(); //接続の処理 DownLoadProc();//ダウンロード処理 MessageBox(NULL,"通知","ダウンロード完了",MB_OK); EndProc();//切断、画面破棄等の終了処理 } に変更するとOKを押した後に終了処理がながれるのでうまくいきます。 メッセージを出したくないので上記の改善策に変る良い方法をアドバイスください。 よろしくお願いします。
>>302 えーと・・・
>上記のコードだと何故かダウンロードが終わらない間にEndProc();に処理がわたり
>ダウンロードできていないのに処理が終わってしまいます。
素直に、ココ直せwww
非同期?
305 :
299 :2005/04/04(月) 14:32:31
>>303 すいません。その技術が無いので何とか良い方法を
おしえてくださいませんか?
何故 関数がモードレスで次ぎの関数へ処理が
渡ってしまうのか原因がわからないのです。
306 :
デフォルトの名無しさん :2005/04/04(月) 14:33:32
>>296 入門講座はWeb上にいっぱいあるだろうから
あちこち覗いて見なさい
非同期関数使ってるからじゃないの?
テラワロス 釣りだよな
309 :
299 :2005/04/04(月) 14:47:01
>>307 そういう関数もあるのですね。
非同期関数の定義の特徴ってどういう部分になりますでしょうか?
プログラマのオタク率ってどれくらいですか?
312 :
299 :2005/04/04(月) 16:51:25
非同期関数。。色々調べてみたのですが、 心当たりとしてはコールバック関数を使用している事が原因っぽいです サブプロシージャで沢山コールバック関数が存在してるので このあたりから非同期となった関数が先走りしているんですね 何か良い方法がないものでしょうか?処理が終わった後にEndProcを動かしたいのですが
>>312 処理が完了するまでEndProcの手前でブロックすればいい
314 :
299 :2005/04/04(月) 17:06:59
>>313 回答ありがとうございます。
>手前でブロックすればいい
このあたりをもう少し詳しくお願いしてもよろしいでしょうか?
お願いいたしますm(_ _)m
>>314 環境も不明(まあ、windowsだろーが)
中でどんな関数を使ってるかも分からないのに、
それ以上、詳しくレスできるわけねーだろ
コールバック使わなければいいじゃない
結局誰も
>>284 のは出来ないのか
出来ないのになんか言い訳っぽい事言ってるヤツ居るしな。
無茶なのは百も承知の上の質問だろうに
一応俺の解決策としては、あんまりスマートではないが
実装出来れば良いというなら、別スレッドを用意してメンバを常時監視する仕組みを作ればいい。
defineでメンバを操作した事を知らせる関数を追加するようにする。
こうすれば、変数に操作が行われた直後に処理を行えば、近いことは実装出来るはず。
318 :
299 :2005/04/04(月) 17:16:48
>>315 申し遅れまして申し訳ありません
環境はWindowsです。ビジュアルスタジオ97という開発ツールを使ってます
動作環境はNT4.0です。
処理のブロックとはループとかさせておく事なのでしょうか?
専門用語を知らないのですみません
>>316 コールバックを使わないように改造する技術が当方にありません
>>314 BOOLフラグでも用意してTRUEになるまでSleepループしてれば?
>>317 スマートじゃないというか、危険じゃまいか
通知される関数が構造体に対して変更処理をしないことが大前提になるだろ
>>320 とっくに無理ってこと終了してるわけだが。
メンバー名を変更してコンパイルエラー出しまくって
それをsetter/getterに置き換えていくことを提案したい。
DoxygenあたりでCソースを構文木に還元して、 perlでマッチングを使って、ソースを書き換えていく、 とかいう方法とか。
よくよく考えたら、メンバ名を変更した時のコンパイラ出力を perlにでも食わせた方が早いか。
>>318 同期オブジェクト作ってメインスレッドは同期オブジェクトがシグナル状態になるのを待つ。
完了コールバックで同期オブジェクトをシグナル状態にする
>>317 ビジーループに近いスレッド作るのか?
俺の部下がそんな莫迦な実装しやがったら殺すね。
元が C なら、そのまま C++ としてコンパイルすりゃいいだろ。
んで、
>>321 の手で必要なメンバ変数だけプロキシクラスに変更。
一切既存コードを書き換えないで
>>284 をやろうとすると、
C#のpropertyみたいな仕組みが必要になるなぁ
結局無能が煽ってるだけだったんだろ?
飯の時間終わったらまたはるちゅう登場か ぼくちゃんたち はよねなさい(ぷ
さてSchemeインタプリタでも作るか。
質問です。 Outlook Express 6 のメールビュー画面で、選択したメールの上で右クリックした際に 表示されるメニューに、カスタムメニューを追加する方法はありますでしょうか? IE ではレジストリエントリを追加することでカスタムメニューの追加が可能でした。 Outlook(Office) では VBA(?) やアドインなどで可能らしいのですが、 OE でも同様なことが可能であれば、その手法が知りたいです。 やりたいことは、メールリストビューを右クリックメニューから、 選択したメールの From TO CC などのメールアドレスを一覧表示し、 それらのアドレスのいずれかが選択された場合に、 別アプリケーションへ選択されたメールアドレスを引数として渡したいです。 UI としては Norton AntiSpam などが同メールリストビューの右クリックメニューへ カスタムメニューを作成していると思いますが、あのようなカンジを想定しています。 言語はできれば VC か WSH が理想ですが、他言語でも構いません。 なにかヒントになりそうな情報がありましたら、教えてください。よろしくお願いします。
OEてplug-in作れたっけ?
>>331 Thunderbirdに拡張(XUL+JS(+XPCOM))が現実的。
失礼します。質問させてください。 テキスト形式で ,a ,b ,c と記述されているファイルを ,a,b,c という風に変換したいんですが、どうすれば良いんでしょうか。 ノートパッド・ワードパッドなどの各種エディタの置換や、 cygwinを使用して"tr"で、改行コード("\n"や"\r"や"\r\n"を試しました)を 別の文字に変換しようとしましたがうまくいきませんでした。 フリーの文字変換ソフトなども試してみましたが、これも受け付けませんでした。 方法は一般的なソフトなどを使用するものでしたらなんでも構いませんので、 (Visual Studioは入ってません) お知恵をお貸しいただけないでしょうか。 板違いな気もするんですが、他に適切な板が見当たらなかったのでこちらで質問させて頂きました。 当方非プログラマ・win2000使用です。
EmEditorやSakuraエディタのような一般的なエディタは、 「エスケープシーケンスを使う」もしくは「正規表現を使う」にして \n を空白と置換すればいいはずだけど… ソフトウェア板の話題だろ
336 :
334 :2005/04/04(月) 23:28:09
>335 ありがとうございます! SakuraEditorで「正規表現を使う」にチェックを入れたところ 「\r\n」を変換してくれました。 板違い、大変失礼しました。 お答え下さいまして、本当にありがとうございます。
.NET Frameworkが標準でインストールされてるのってWindowsXPだけ?
XPだって標準じゃ入ってないだろ。
339 :
デフォルトの名無しさん :2005/04/04(月) 23:58:31
zlibのcompress()を使ってるのですが char型の文字を30文字くらい指定すると、15文字程度に削られてしまいます。 一度に圧縮出来ないのでしょうか?
340 :
339 :2005/04/05(火) 00:18:15
Cでの質問です。 環境はVC++.NET2003です。
341 :
高校生 :2005/04/05(火) 01:53:34
質問です。 eclipse を日本語表示にするにはどうしたらよいのでしょうか? 教えてくださいお願いします。
>>339 BYTE型の制限上、あんまり長いのは無理。
他人からノートPCもらったんですけど、 一端設定からなにから全部綺麗にやり直したくて、Administrator以外の ユーザー全部消しちゃいました。 その後、PCを再起動して気付いたんですけど、その Administrator のパス ワードがわからないんです。そいつに聞いても忘れた、っていうし、ログイン さえ出来ない状態になってしまいました。これってもう捨てるしかないんでしょうか? ほんとうに、困っています。
Windows板池
>>345 最初からOS再インストールしとけばよかっただけでは?
はい、そちらに行ってみます
350 :
デフォルトの名無しさん :2005/04/05(火) 14:15:53
bool型は何故1バイトも食うの?
>>350 メモリをバイト単位で管理するコンピュータを使っているから。
配列ならstd::vector<bool>とかstd::bitsetとかを使ったり、構造体のビットフィールドにしたりすれば1ビットずつ割り当てられる。
353 :
デフォルトの名無しさん :2005/04/05(火) 15:18:33
サーバのアクセスログのIPアドレスからそのマシンのメールアドレスを知る方法を教えてください。
>>353 そのマシンにリモートでログインして、
メーラーを立ち上げて、メールアドレスを調べる
ログみりゃいいじゃん、サーバーってSMTPサーバーのことなんだろ?
メモリが安い昨今ですが、コンパイル時のobjファイル(ソースはさすがに…)出力先を RAMディスクなんかにすると、コンパイルがバカみたいに早くなったりするんでしょうか。 試したことがある人が、もしいらっしゃいましたら…。
なるよ。特にデバッグビルド(最適化オフ+シンボル情報吐きまくり)で効果がある。
>>352 >std::vector<bool>とか
オススメできない。
361 :
デフォルトの名無しさん :2005/04/05(火) 18:24:13
'1'をintかdoubleの1にしたいんですがどうしたらいいですか? 言語はCかC++です
strtodだな
365 :
デフォルトの名無しさん :2005/04/05(火) 21:32:01
C++の勉強をしたいのですが独習C++とやさしいC++どっちがお勧めですか? 一応Cの基礎文法は分かっています。
はて、Cを十全に理解しているならC++を勉強したいなどと思うことはないはずだが。
>>365 >どっちがお勧めですか
そんな本をどっちも読んでるようなやつはたいていたいしたことが無いやつだから、
あんまし当てにならんレスしかつかないんじゃないか?
RUPのスレとかってないんでしょうか?
370 :
357 :2005/04/05(火) 23:59:56
>>358 お礼遅れてすいません。レスありがとうございました。
明日よだれ垂らしながらメモリ買ってきます!
371 :
デフォルトの名無しさん :2005/04/06(水) 05:40:36
なぜか、表示→ソースをやってもソースが表示されません・・・ なぜでしょうか?・・・
>>371 何が聞きたいんだかさっぱりわからんのだが、
取りあえずこの板のローカルルールを読め
れっとせんど とはなんですか? DOS窓開いて打ち込むコマンドなのかな? 綴りもよくわからんです。
375 :
デフォルトの名無しさん :2005/04/06(水) 20:01:50
これはソースですか?
376 :
デフォルトの名無しさん :2005/04/06(水) 20:04:15
オーッ 私ニポンジンアルヨー。ホエホエ。 ていうか、ニポンゴキーボぅズでは英語キーボぅズの チルダスキャンコードが出せないアルヨー。ホエホエ。 これ海外ゲームだと非常に困るんだべし。 何とかして日本語ドライバを保ったまま英語キーボぅズ チルダスキャンコードだせへんやろか。 おいどんは吸収男児でごわ!
窓のVisual StdioでC++書いているんですが プログラム終了までの実行時間を測定して出す方法ありませんか? linuxのtime やcatみたいな感じで。
あります
タイマ開始 実行 タイマ停止 タイマ停止時刻-タイマ開始時刻
無いです、プロファイルしたいならウニバー猿買ってください
CreateProcesssして、WaitForして、GetProcessTimesを呼べばいいと思うが。
タイマかけなくても、システム時間を二回とればよい。
echo %time% myprog.exe echo %time% でかかった時間を自分で計算
>>384 それだと、HDDからメモリにロードする時間も含まれてしまうから、純粋な処理時間がわからない。
386 :
デフォルトの名無しさん :2005/04/07(木) 03:39:12
Windowsでポップアップされた エラーメッセージを クリップボードにコピーする ショートカット キー 教えてください
387 :
デフォルトの名無しさん :2005/04/07(木) 05:33:35
障害が発生するとプロジェクト規約を無視して プログラムを直接変更(CVS範囲外)する プロジェクトマネージャがいるんですがこういうのってあり? しかもそれを開発者に報告しない。 マスタがCVSにあるという認識はない。 動いているものがマスタだという認識。 バージョン管理というものが何だかわからないPMから身を守るには?
>>387 うるせえよ馬鹿
お前もそいつとレベルは一緒だ
>>387 プロジェクト規約を決めるのはプロジェクトマネージャの仕事。
PMのやり方より、あなたの方法のほうが生産性が上がると考えるのなら
その事をレポートにまとめて提出すればよい。
板のローカルルールを無視して板違いの愚痴を書く貴方の考えが
そのPMの考えより優れているとは思えないが。
390 :
デフォルトの名無しさん :2005/04/07(木) 11:06:47
ホットスタンバイのシステムを作りたいんだけど、 実現する手段としてどういうのがありますかね。。。 ロードばらんさーとか高すぎで個人では手が出せないので;; 1台のマシンがぶっ壊れたら2台目のマシンが検知して くれるという構成にしたいんですけど。。。 何方かいい案ないですか
>>390 オートノミックコンピューティングで検索
>>385 >linuxのtime やcatみたいな感じで。
394 :
デフォルトの名無しさん :2005/04/07(木) 13:00:58
VB6でアニメーションGifの出力コンポーネントわかりませんか?
>>387 そのPMの作業内容もCVS側にコミットすればいいだけ
>>394 出力って表示だけでいいのか?ファイルに出力?
つかVB6のスレあんだからそっちで聞け
398 :
デフォルトの名無しさん :2005/04/07(木) 13:47:29
ファイル出力もWebBrowserコントロールでいけるのか?
399 :
デフォルトの名無しさん :2005/04/07(木) 13:58:47
>>398 おまえは質問者か?
>>394 にはファイル出力とは書いてないから
どんな答えが返ってきても文句は言えない
400
つかVB6のスレあんだからそっちで聞け
URLにfile://c:/とか指定すればIEコンポで開ける
403 :
デフォルトの名無しさん :2005/04/07(木) 15:33:50
質問です。 リリースビルドで起動すると、何か原因不明の理由で不正終了するんですけど デバッグビルドだと正常に動き続けてしまいます。 デバッグ出来ないので、困ってます。 Cの領域破壊による物だと思うのですが、こういう場合どうやって調べれば良いのでしょうか? 環境はVC++.NET2003です。 宜しくお願いします。
デバッグビルドをリリースすれば良い( ´,_ゝ`)プッ
405 :
378 :2005/04/07(木) 15:40:48
皆さん、アドバイスどうもです。 結局リソースキット入れてtimeitコマンドで一応の解決としました。 勉強になりました。m( )m
>>403 どうせファイルとかの位置関係のミスじゃねーの
407 :
デフォルトの名無しさん :2005/04/07(木) 16:36:52
UNIXのシェルプログラムを作っているのですが cp -pコマンドの結果をUNIXの指定DIRにログ出力したいのですが 可能でしょうか?
可能
409 :
デフォルトの名無しさん :2005/04/07(木) 17:03:34
>>408 ちょこちょこっとその方法(コマンドライン)を一行レベルで書いていただけないでしょうか
お願いします。m(_ _)m
windowsアプリケーションでファイルの読み書きなどの操作をしたいんですが windowsAPIのReadFile()を使って読みこむのと C言語のfopen()使うのでは何か違いとかあるんですか?
K&Rの入門サイトはどこがいいでしょうか。 C言語は文法ぐらいしか解りません。
>>411 K&Rの入門サイトというよりも、Cの解説ページを探しているのでしょう?
大学の講義ページを当たってみるとC言語を良く知らない人の為の課題(講義の課題)が載っていることもありますので、
わりと役に立つと思いますよ。
問題を解いてみて解からないところがあれば、プログラミング言語Cなどの参考書を参照すれば良いでしょう。
日本では昔から、「心より出でて形に入り、形より出でて心に入る」と申します。
414 :
デフォルトの名無しさん :2005/04/07(木) 18:34:21
>>413 例えばファイルを連続で100本コピーするとします。
そのコピーコマンドをshファイルにズラーと書き出し
UNIX側で起動書けます。コピーはヴワーと走り出すのですが
shに書いていると連続処理となるので、DIRやファイルが無い場合に
どのファイルがコピー失敗したか分からないのでコピーの成功、失敗の
結果を指しております
win32 アセンブラで質問です char *dest; char mins; で、以下の命令でオペランドの型が無効とエラーが出るのですが mov eax,dest; mov BYTE PTR[eax],mins; cで書くと *dest=mins; という処理がしたいのですが。。。 初歩的質問で申し訳ないです・・・。
成功は知らんが失敗は失敗したと結果が返ってくるからパイプなりとおして書き出せ
418 :
415 :2005/04/07(木) 18:47:40
>>417 えっと上のchar/char*はCで書いた宣言部分です
それとも違うとこでしょうか
(´・ω・`)
X86アセンブリには、メモリからメモリにmovするようなオペランドはない。 mov ebx, dest mov al, mins; mov byte ptr [ebx], al とでもしとけ。
420 :
415 :2005/04/07(木) 18:57:28
>>419 あ、これでもメモリメモリになるんですね
すみません、ありがとうございました
>>410 fopen()はCreateFile()に対応し、ReadFile()はfread/(f)getcなどに対応する。
fopen()にはテキストモードとバイナリモードの違いがある。(CreateFile()はバイナリモード相当)
fopen()の返すファイルポインタを使うと直接fprintf/fscanfが使える。(CreateFile()使った場合もsprintf/sscanfを使えばいい)
Windows APIにはGetFileSize()などがあるが当然CreateFile()の返すハンドルしか受け付けない。
ようするに適材適所で使い分けろ。
>421 thx
423 :
デフォルトの名無しさん :2005/04/07(木) 19:48:52
perlについての質問です。 下記のソース中で、自作モジュールのSAMPLE.pmを使用してるのですが、 パッケージがmainからSAMPLEに変ると、 パッケージ名がSAMPLEのままになってしまいます。 標準モジュールのCGI.pmを使用するとこのような事はおこりません。 どこにその違いがあるのか、ご教授ください。 -------------------------------------- require "func.pl"; use SAMPLE; $u = new SAMPLE; $u->hoge(); &func_hoge(); # func.plの中に定義されているメソッド -------------------------------------- これを実行すると [Undefined subroutine &main::func_hoge called at ...] となってしまいます。 パッケージ名がSAMPLEになっているからと思われます。
前から思うのですが、バイナリモードとテキストモードはどう違うのでしょうか? テキストモードは\0などは扱えないと言うことなのでしょうか? aaa\0bbb\0 とかを扱う場合はバイナリモードという意味ですか?
つられないぞ
説明したって thx だけだもんな
>>424 改行コードがWindowsは\r\nだけどCでは\nとなっている。
ファイル入出力時にこの変換を行うのがテキストモード。行わないのがバイナリモード。
Unix系ではOSの改行コードも\nなので実質テキストモードとバイナリモードに違いはない。
アプリとかを作ってみたいのですが、今から勉強するならどの言語がいいでしょうか。 今のところVC++かVC#を勉強しようと思っています。 ちなみにJavaとPerlは基本的なことはできます。PHPとCも少し。
どの言語かと聞いてVC++かVC#と書くあたり 基本的なところもできてない予感
すいません間違えました。C++かC#です。
javaできるならC#でいいだろ
D言語
436 :
デフォルトの名無しさん :2005/04/07(木) 23:36:14
m4についてナイスな解説がされているサイトを教えてください
zlibと同等のライセンスで 更に短いtxtデータが縮む圧縮libraryないですか? インターフェースは同じような感じが好ましいのですが・・・
438 :
431 :2005/04/08(金) 00:57:35
挑戦するほどのもんでもないだろ
つっこむほどのもんでもないだろ
441 :
デフォルトの名無しさん :2005/04/08(金) 06:30:26
Cの質問です。 char型の配列として宣言されたものの、領域を他の関数内で調べるにはどうすればいいのでしょうか? for(i=0; "&str[i]!=NULL" ;i++) で、出来るかな?と思ったんですが、いっこうに終わりませんし・・(おそらく領域外のNULLで止まってない?) 色々な事情で別に領域の広さを保存することが出来ないようになってるので、困ってます。 宜しくお願いします。
それでNULLが返ると思ってるところにワロタ それでNULLが返るんなら誰も領域破壊なんぞせんわ sizeofでもしとけ
別の関数内でsizeofしたら、charの大きさが返るだけでは?
>>441 不可能。
sizeofで別途渡すか配列の終端に'\0'などを仕込むかのどちらかしかない。
# 配列をmallocで確保した場合、環境依存な方法でヒープのサイズを取得することができることもある。
DTDの書き方について聞きたいコトがあります。 XML関係なのでWebと言えばWebですが・・・ どこの板のどのようなスレで聞けばいいでしょう もちろんGoogleによる検索/オフラインでの調査は行いました。 Web系っちゃWeb系ですが、Web制作板では無い・・・と思う つーかあの板は死んでいる、と判断。
>>448 SUNX
Web制作板で、果たして反応して貰えるだろうか・・・
450 :
デフォルトの名無しさん :2005/04/08(金) 10:46:28
C#のプログラムをlinuxで動かすことはできますか? もしできるとすれば、何が必要でしょうか?
>>431 んー?なんだかわかんないけどできちゃったー。 → C井
ワハハハハおれに不可能はない! → C/C++
454 :
デフォルトの名無しさん :2005/04/08(金) 11:45:33
Visual C++などのライブラリでも#defineが多用されていますが、何故constではなく#defineを使うのでしょうか?
>>441 &str[i]じゃなくてstr[i]にしてみたらどうよ。
456 :
455 :2005/04/08(金) 12:22:56
ちゃんと読んでなかった。 スマソ
457 :
455 :2005/04/08(金) 12:26:16
追記 ダブルクオートは取れ。 それだと"&str[i]!=NULL"という定数が0以外の場合(意味不明)にループすることになる。
お客さん、アナルに突っ込んじゃだめですよ。もうちょっと上。
>>454 そもそもC++ライブラリだけじゃなくCライブラリもあるから
const と #define はC++なら同じように使っても別に大して問題無い(どっちも定数式)
Cでは const はただの値変更不可能な"変数"であり定数式じゃないから配列宣言とかに使えない
だから#defineが多い
ふつーenum。 class Foo{ const int i=5; }; ができないから。
#defineって事前置き換えだった?
>>461 「プリ」プロセッサディレクティブだもん。
本来の意味からいくとenumを数字として扱ってはダメ。
Effective C++では間違った事を教えている。
C++だけで使うのならもはや#defineはイカンな
ハァ? #ifndef NDEBUG #define private public #endif なんてプリプロセッサによるアクセス制御は常識だろ
>>459 >Cでは const はただの値変更不可能な"変数"であり定数式じゃないから配列宣言とかに使えない
それは古い知識です
今の C では OK でつ。可変サイズの配列もあるしね
開発技法(フローチャートの類)にはどのようなものがあるのでしょうか。 できればその長所短所も教えてほしいです。
>>470 フローチャートは開発技法ではない
君の質問は無効だ
>>469 ( ゚д゚)ポカーン
新しい知識は、古いコンパイラには通用しません
まあ、確かに最新のCではあるんだが。 C99 ってほんと流行りそうな気配皆無よね? やっぱり C++ との互換性がないから?
YES だいたい、Cが生き残ってる分野はレガシーな分野が多いから、 いまさら新しさはいらない。
>>476 C95とC++の互換性はあるというのか?
>>478 C99よりはあるだろ
それより将来DSP関係の規格が追加されるらしいけど本当かね
そのうちC2005とか出てこないかな。
481 :
デフォルトの名無しさん :2005/04/09(土) 00:23:34
.NETのマネージド、アンマネージドという用語の使い方がよくわからないのですが、 マネージド -> .NET Framework上で動くアプリケーション (VC++.NET) アンマネージド -> ネイティブアプリケーション(VC++) ということでよいのでしょうか?
483 :
デフォルトの名無しさん :2005/04/09(土) 16:28:33
Cをちょこっとやっただけの初心者です。 別々のフォルダにある同一の名前が付けられたmhtとjpgなどの画像ファイルを探し出し、 画像をmhtの画像部分とすりかえるという処理をさせるプログラムを作りたいのですが、 CとDelphiのどちらのほうが向いてるんでしょうか?
プログラムを勉強しようと思います C言語やら何やら種類がある御様子ですが、メジャーなものとその位置付けを教えて下さい 最初はこれやっとけ、というのも教えて頂けると助かります
>>486 スレ立てるまでもないどころか、聞くまでもない質問だったという事ですか
解りました、仰る通りに致します
>>487 「最初はこれやっとけ」というものを教えただけだが?
>>485 C言語だけやっておけばいいってカプコンの偉い人がいってたよ
それからプログラマって言語はできて当たり前だから得意分野作っとけ
一番初めに覚える言語はプログラマとしての今後を左右する程重要だよ。 あとでいくらいろんな言語を覚えても、一番初めに身についてしまった物の考え方というのは後々まで付いてくるからね。 Lispなどから始めたやつは計算機科学者向きになるし、アセンブリやC、Fortranなどから始めたやつは土方プログラマ になる。Smalltalkから始めたやつはソフトウェアエンジニアになる。
んなわきゃねぇーー
>>490 >一番初めに身についてしまった物の考え方というのは後々まで付いてくるからね。
ばかだからでは?
>>493 だとしたら、大半のプログラマは馬鹿なんだろうな。
馬鹿かそうでないかというのは相対的な事に過ぎない。
495 :
デフォルトの名無しさん :2005/04/09(土) 23:43:25
WinCVSでソース管理しようと思って インスコ後、設定してリポジトリを作成しようと思ったら cvs [init aborted]: EOF in value in RCS file modules,v というメッセージが出てうまくいきません。 どなたか助けてくださーい。 環境はWinXPSP2, WinCVSごった煮版で ローカルディレクトリで使いたいのです。
497 :
デフォルトの名無しさん :2005/04/10(日) 03:03:06
VC++で生成したWin32のテンプレにコードを追加して居るんですが 全ての場所から読みたいstructで定義した型があって それをあるヘッダに書いて、StdAfx.hでインクルードしてるんですが 既に定義されてる とリンクエラーが出ます。 #pragma onceをStdAfx.hでも、そのヘッダでも書いてるのに・・・ どうすれば回避出来ますか?
StdAfx.h では extern で書けよ 実態は別 cpp ファイルで
>>497 ,-┐
,ィ─、ri´^-─- 、 .┌f^f^f^f^f^f^f^f^f^┐
く / , ,' ヽ ヽ| ~ ~ ~ ~ ~ ~ ~ ~ ~│
`<' / ,'レイ+tVvヽ!ヽト 知ってるが │
!/ ,' i |' {] , [}|ヽリ お前の態度が |
`!_{ iハト、__iフ,ノリ,n 気に入らない |
// (^~ ̄ ̄∃_ア____n_____|
_r''‐〈 `´ア/トr──!,.--'
<_>─}、 `」レ
'ヽ、 ,.ヘーァtイ
Y、.,___/ |.|
| i `ー'i´
500 :
デフォルトの名無しさん :2005/04/10(日) 11:46:22
C言語で関数型っぽいプログラミングができるライブラリってありますか?
C言語はPascalと違って関数型言語ですよ。
>>500 主張するだけなら全く問題ない気がしますが。
>>500 なぜ禁止なのか作者に問い合わせてみては?
>>500 >>505 が言われるように作者に聞くのが一番でしょうが、丁重な返事が来ない
可能性もある印象を持ちました。
私も 音楽CDを買うと似た曲が入っていて、編成を変えて枚数を減らせないかと
CDDA から指定のトラックのデータを取り出すプログラムを作りましたが、これ
って自分のためだけならいいのでしょうが、使いようによっては著作権に抵触
する行為につながりますよね。くだんの作者は痛くもない腹を探られないため
に歯止めをかけたのではないかと想像しました。(なら、上げるなってのもあり
でしょうが、他にも開発されておられますし、PRってのもあるかも)
作者の意図じゃなくてこのライセンスが 法的に効力を持ちうるかという話だろ。
そもそも、ソフトウェアのライセンスってどこまで、著作者に許されてるかがハッキリしない…
MD5は128bitの情報を出力しますが これをCの型で納めるにはどうすればいいのでしょうか? unsigned long long int?
uint8_t[16]
long a a |= 0x01; a |= 0x04; この|=とゆうのはどういった作用なんでしょうか?
代入演算子
>>511 long a;
a = a | 0x01;
a = a | 0x04;
bitごとの論理演算子とかでぐぐれるはず
複合代入演算子
ググれました。ありがどうございます。 すいません、もう一つお願いします。 if( a & 0x01){} if( a & 0x04){} &が一個なのは,どうゆう条件になるんでしょうか?
518 :
デフォルトの名無しさん :2005/04/10(日) 22:14:16
C#.NETとDelphiどちらが簡単短時間で終わって生産性が高いですか? 仕事でなくて趣味でネット関係で使いたいんですが あとC#.NETとDelphiの悪い点を教えてください
>>516 上から
a & 0x01
a & 0x04
の結果が0以外のときに実行する
520 :
板違い :2005/04/10(日) 22:27:05
webデザイナーになるために必要な知識をお教えください。 HTML,CSS,FLASH等、、、 できれば学ぶ順番もお願いします。 また、需要があるのはデザイナーとプログラマーのどちらでしょうか?
Web制作板いってこい
522 :
デフォルトの名無しさん :2005/04/10(日) 22:43:06
523 :
デフォルトの名無しさん :2005/04/10(日) 23:06:39
>>522 バージョンアップして背景がついたのか?
じゃあバージョンアップ前は…
>>484 じゃあDelphiでやります。
サンクス
525 :
超初心者 :2005/04/11(月) 00:47:24
BASICで文字変数に入力された値が、1桁の数字かどうかの判断は どうすれば出来るでしょうか?
一口にBASICといっても16777216種類くらいあるわけだが。
527 :
超初心者 :2005/04/11(月) 00:49:13
N88BASICです
1文字かどうか見れば済む話だと思うが
ヒント:ASCIIコード
531 :
デフォルトの名無しさん :2005/04/11(月) 11:25:19
>525 10 I$=INPUT$(1):A=ASC(I$) 20 IF A>** AND A<** THEN 30 ELSE 40 30 PRINT "ヒトケタ":END 40 PRINT "ソレイガイ":END でいいのか?**は1〜9までのアスキーコード。忘れた。 で、俺が相談に乗ってもらいたいのは、
532 :
デフォルトの名無しさん :2005/04/11(月) 11:29:10
Visual C++ でコンソールアプリを製作中。 system関数を使うのだが、 command[]="SET AAA=C:\\"; system(command); で、うまく動作しない(SETで見ると、AAAにセットされていない)。 system("SET AAA=C:\"); でも、うまくいかない。 書き方が悪いのか、それともエスケープシーケンスをつけたりしなければならないのか…。 できる方、お願いします。
533 :
デフォルトの名無しさん :2005/04/11(月) 11:48:08
初歩的過ぎて申し訳ないんですが、 queueをポップした時、中身はどこに行くんでしょうか。 C++のSTLにあるqueueを使ってて、 popした要素を別のものに入れたいんだけど。
>>532 セットされてるんじゃないの?
もっとも、そのとおりにやってるんだったら、systemから返ってきた
時点で子の環境は破棄されてるから、セットされたかどうか
確認する手段はないが。
というか、何をしたいのかよく分からん。
cmd /c "set AAA=C:\"ってコマンドラインからやるのと一緒だけど
そこんところの理解は大丈夫?言語の問題じゃないぞ。
親プロセスのPHPいじらないとだめだな
536 :
506 :2005/04/11(月) 11:59:52
>>507 形式的には、効力をもち得ると解釈します。で実際にはどうかとなりますと、係争
しないと確定できないでしょう。ライセンス主張が行きすぎで、自分が困るという
ならそれを打ち消す訴えを出すしかない。衝突して決着するか、回避するかは
訴訟の費用、手間隙、結果から得られる利益、不利益を勘案して決められることだ
と思います。
537 :
532 :2005/04/11(月) 12:16:08
>>534 サンクス。ファイルをコピーする、ファイルがあるかないかを調べる、
というのを書こうと思って、普通に別関数書くよりかは、コマンドで
EXISTとCOPYを使ったほうが早いかと思ったので。
command="AAA=C:\";
putenv(command);
で解決しました。
>>533 front()使ったら出来る。
自演ですゴメンナサイ。
539 :
デフォルトの名無しさん :2005/04/11(月) 14:29:47
1バイトの文字コードから数バイトの文字コードまで色々ありますが、 もし1バイト以内で表せれる数量でも、nバイトの文字コードにするとnバイト分のデータをその1文字に使うんでしょうか? 上位桁を0で埋めるとかで。(nは2以上の整数) この文章では意図が解り難いかもしれませんが、 要するに0〜255番目までの番号が割り当てられた文字でもnバイトのデータになるの?ということです。 だとするとより少ないバイト数の文字コードで済む場合は出来るだけその文字コードを選択する方が良いのでしょうか。
>>539 1文字当たりのバイト数が固定の文字コードもあるし、
文字によって、バイト数が可変の文字コードもある
Win32アプリケーションからアプリケーションを引数付きで呼び出せる関数はありませんか。
CreateProcess/ShellExecute(Ex)
電車とかで携帯で見れて勉強できちゃうようなCのサイトとかないですかね?
京ぽんとかブラウザ機能の優れた奴買ったら
どんなサイトでも、印刷したら携帯でみれるでしょ。
ていうか本ぐらい買え
548 :
デフォルトの名無しさん :2005/04/11(月) 21:38:45
>>540 euc-jpとshift-jisはどちらなんでしょうか?
e-words等で調べてみましたがそれに関した記述がありませんでした。
1byteと2byte両用
euc-jpは3バイトで表現する文字も有った気がする
A | | | | X |┐ B ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ POINT A, B; int X; A.x = 50; A.y = 0; B.x = 0; B.y = 50; X = .... Xの角度を求める方法を、C言語風のコードで教えて頂けませんか
常に直角に見えるのは気のせい?
y=ax+bの直線と、x軸とのなす角は、 atan(a) である
ぶっちゃけ角を構成する2線分の合計4つの端点のうちそれぞれ片方ずつしか指定されずにどうやって角度を求めるってんだバカ
ん? 4つ指定してるように見えるが?
AとBの2個しか指定されてないだろ 線分同士の交差角を求めたいなら4個ないとミリ
あ、ほんとだ(汗
つーことは、交点が固定なのかな。原点とかに。
>>553 ええ、直角なんですが、辺ABの関係から計算で求めたいんです
>>554 角度 atanでぐぐったら目的の物が見つかりました、ありがとうございました
>>555-559 すいません、間違えてました
POINT A_start, A_end, B_start, B_end
というようにしなくてはダメでしたか、、
普通は3つ以上点がなきゃ角なんてできないからな 見つかったなら後はガンバレ
ゲームとかでよく使うね 敵のいる方向に自機を向かせたい時とか
atanのテーブル化で小一時間悩んだのが懐かしい
ピタゴラスがこのスレ見たら泣くな
565 :
デフォルトの名無しさん :2005/04/12(火) 02:19:34
hex:24,1b,a1,dc,bb,bd,81,14,1a,c0,6e,5f,79,ef,ed,d5 これを文字コードに直すとなにになるのか教えてください! おねがいします
>>565 68 65 78 3A 32 34 2C 31 62 2C 61 31 2C 64 63 2C
62 62 2C 62 64 2C 38 31 2C 31 34 2C 31 61 2C 63
30 2C 36 65 2C 35 66 2C 37 39 2C 65 66 2C 65 64
2C 64 35
567 :
デフォルトの名無しさん :2005/04/12(火) 04:13:12
MD5のダイジェスト出力を64bitCPUで高速化する余地ってありますか? 32bitと同じ方法の方が速いのでしょうか?
ある
569 :
デフォルトの名無しさん :2005/04/12(火) 08:58:31
UNIXサーバ上で動作する【指定ディレクトリ配下一覧作成ツール】 を作りたいのですが、Cでコードを作成する場合 ファイル情報の抽出はstat関数で取得できますでしょうか
570 :
デフォルトの名無しさん :2005/04/12(火) 11:20:45
意地でもscanfでオーバーフローを避けたいのですが scanf("%2s", &FuckingAssHoleNarouNarouASSnarou) 例えばこんな感じにすると2文字だけ入力になって 2文字以上入れられてもオーバーフローを防止できませんか。
素直に fgets() 使えよ
572 :
デフォルトの名無しさん :2005/04/12(火) 12:11:33
afsを展開出来るツール探してるんだが・・・ どこにあるか教えてくれ。
573 :
デフォルトの名無しさん :2005/04/12(火) 12:28:07
ウチの会社には ちゅこくじんがいるあるよ。 で GLSLを組んでいるのだが ちゅこくじんが"GLSL"を発音すると明らかに "ジーエロエスエロ"
エフゲッツって言うな!!!!!!!!!!!!!!!!!!! 今は亡きダンディ坂野か。
C++でEXCELに書き込むにはどうしたらいいのですか?
COM
COMってなんですか?
google.COM
まじめに教えてください。こっちは遊びじゃないんですから。
当方まだ知識不足なので、出来ればソースキボン
javaをインストールしたくてトムキャットを落としたのですが、いまいちよくわからないんでわかりやすいサイトがあれば教えてください
>>580 まじめに教えてくれるトコロに逝ってください。こっちは仕事じゃないんですから。
ふざけて教えれるトコロに逝ってください。ここはネタスレじゃないんですから。
COMっていったらMS-DOSのCommand Object Modelでしょ。
590 :
デフォルトの名無しさん :2005/04/12(火) 19:08:56
Web板いってこい
>>590 自宅サーバ立てて、情報全部自分で集めれば10万以下。
フリーのレンタルサバで我慢すれば1万もかからないだろ。
593 :
デフォルトの名無しさん :2005/04/12(火) 19:16:02
594 :
デフォルトの名無しさん :2005/04/12(火) 22:09:23
468 名前: 仕様書無しさん 投稿日: 2005/04/12(火) 17:48:42 getsのオーバー風呂を目に見える形で現すにはどうしたらいいですか。 たいがいそのまんま書いてオーバーフローさせても、単にそのまま終わるだけで なんのどこかどうオーバーフローして何の影響があったのかわかりません。 ビックラこくような例はどうやったら作れますか。 469 名前: 仕様書無しさん [sage] 投稿日: 2005/04/12(火) 18:28:01 ム板逝っとけ。 ここはマ板だ。
OpenGLやDirectXプログラミングは.netかVC++でないと困難ですか? GCCやBCCでもできるような気がしてなりませんが 激しくライブラリが足りない気もします なんとか解決できませんか。
597 :
デフォルトの名無しさん :2005/04/12(火) 23:13:18
フリーウェアなどをWebで公開するとしたら言語は何を選択するのがいいでしょうか? いちいち実行するのに必要なファイルをインストールとかしないで落としてすぐ起動できるみたいなのがいいです。 たとえばJavaとかc#なんかで作られたソフトはなにかしらを別途でいれなきゃいけない。 Delphiとか使ってみたんですが今いち自分にあってない様です
ライブラリさえ引っ張ってくればBCCでもVBでもGCCでもなんでもできる それがCOMの仕様
>>597 ネイティブコンパイラがある言語なら別になんだっていい。
CもしくはC++が普通だけど、趣味でMLを使うのも良いかもしれない。
>>598 誰もライブラリが必要とかCOMとか言ってないよ。
そこでHSp(ry
MFCあたりにしとくよ。参考にならない意見ありがとう
C++とMFCは一心同体少女隊
607 :
デフォルトの名無しさん :2005/04/13(水) 06:46:00
質問です。 VC++.NET2003でスレッドプログラムを作ろうとしてるんですが DWORD WINAPI thread1(LPVOID pParam) { return 0; } HANDLE hThread = (HANDLE)_beginthreadex(NULL,0,thread1,(LPVOID)pParam,0,&dwThreadId); とやったら error C2664: '_beginthreadex' : 3 番目の引数を 'DWORD (LPVOID)' から 'unsigned int (__stdcall *)(void *)' に変換できません とエラーが出ました。 参考サイトではこうやってて成功してたのですが・・・ バージョンが変わったので仕様が変わったのでしょうか? これはそのままキャストしても問題はないのでしょうか?
608 :
607 :2005/04/13(水) 07:20:11
すみません 自己解決しました。結局CreateThread()の方を使いました。 それで、引数としてスレッドへスレッドハンドルを渡して 作成したスレッドが終了する手前で、自分でCloseHandle()をしようと思うのですが これは問題は無いのでしょうか? DWORD WINAPI thread1(LPVOID pParam) { TMP *pTmp; pTmp=(TMP *)pParam; CloseHandle(pTmp->hThread); free(pTmp); return 0; } このような実装を考えているのですが・・・ ちなみにTMPは自分で作った構造体です。
beginthreadex使わないなら、CRT使ってはいけない。
>>607 エラーメッセージのとおり。_beginthreadex 使うなら
unsigned int (__stdcall *)(void *) 型の関数にしないとな。
static unsigned __stdcall thread1(void *data) でやってみれば。
>>608 _beginthreadexではその手法でやってるけど今のところ問題なかった。
CreateThread はしらない。
ハンドルが要らないなら、CreateThreadから帰ってきてすぐに閉じればいい。
612 :
607 :2005/04/13(水) 08:07:15
なるほど、レスありがとうございます。 ハンドルを消したからといって、スレッドがその瞬間消えてしまう訳じゃないんですね。
AdvancedWindowsに、 _beginthreadexとCreateThreadの戻り値と引数の互換性を持たせるマクロがあったよーな
素人にスレッドプログラムは十年早い
615 :
デフォルトの名無しさん :2005/04/13(水) 13:28:11
ツェーでコンソールアプリを作りました ところが、MS-DOSフマンドで言うCLRができません。 どうやれば文字消去できますか。 あと \t\r\nを駆使して場所指定して文字を出力はしましたが これって結局力技ですわいね。 座標指定して好きな場所から文字を書くようにしたいとです。
cursesとかエスケープシーケンスでも調べとけ
617 :
デフォルトの名無しさん :2005/04/13(水) 13:29:45
C言語でソケット通信を行う予定です。 クライアント側の処理なんですが、下記の順番でやっています。 ・socket()の実行 ・あてさきアドレス、ポートなどの設定 ・connect()の実行 そこで「ソケットパス」というものを設定するそうなんですが、 設定方法はsetsockopt()でいいんでしょうか? お願いします。
ツェー=C?
別スレッドでlistenした方がいいよ
621 :
デフォルトの名無しさん :2005/04/13(水) 15:26:11
asciiコードは7ビットらしいですが、これはasciiコードの文字が2文字あったら14ビットということですか? それとも1ビットだけ常に固定の桁があってデータ量としては1文字8ビットで、2文字なら16ビットという事になるんでしょうか。
PC/AT互換機とかだと1バイト8ビットだから上位1ビットが0固定になって2文字で16ビット。 1バイト7ビットの機種なら14ビット。
VisualBasicで変数に入れられた数値たとえば a=12 となっていたとき これをa=012やa=00012として扱うにはどうしたらいいんですか? 初歩スマソ
625 :
623 :2005/04/13(水) 16:02:30
すいません、解決しました。
>>594 phrackという変なサイトにコード付きの詳細な解説はあるが
まあ仕組みわかったところで実用性は数学よりも低いな。
>>614 それじゃ、スレッドプログラミングの素人から全員スタートするわけだから
その理論だとスレッドプログラミングが出来る人は居ないと言うことになりますね。
そんなのスタック覗けばわかるだろ あとはchar配列とかにコード仕込んで終了
俺は昔から研究に携わっていたので初めから玄人。
630 :
デフォルトの名無しさん :2005/04/13(水) 21:50:25
C#でWindowsアプリケーションをつくったら、お客さんには .NET Frameworkも一緒に配布しないと動かないのでしょうか?
めんどいならReadmeに 「.NET Frameworkいれてね」と書け
632 :
デフォルトの名無しさん :2005/04/13(水) 21:57:56
Regsvr32.exeを使ってレジストリにdllを登録するとどういった利点があるのですか?
Windowsを使うこと自体にメリットはありません。
>>632 CoCreateInstance()を使ってインスタンスを作成できるようになる。
635 :
初心者 :2005/04/13(水) 23:15:52
えっと、プログラムで、グラフをウインドウに表示させたり、 円を描いたり、動かしたりするのってどうやるのでしょうか? C言語とかJAVA言語を少し習ったのですが、 出力されるのは数字とか文字とかばかりで、グラフィックではありません。 簡単なゲームやアプリを作りたいのですが、 作り方(行程?)が全くわかりません。 環境はmacOSXなのですが、openGLとか用いるのでしょうか? よろしくお願いします。
google検索 java グラフィック
Cなんすけど、デバッグ時には使って最終的には消す関数って Debug_hoge(); とか作っておいて #define Debug_hoge(); とかで無効化するんでしょうか? それとも #IFDEF DEBUG Debug_hoge(); #ENDIF ですか?
void Debug_hoge( void ) { #if DEBUG 〜 #endif }
midiファイルを演奏中にテンポだけ変えるのにはどうしたらよいのでしょうか。 そんな関数やライブラリがあったら教えていただきたいです。 ちなみにVisual c++です。
>>639 何を使って再生しているのかに依ると思うのだが。
641 :
デフォルトの名無しさん :2005/04/14(木) 04:15:46
>>627 >それじゃ、スレッドプログラミングの素人から全員スタートするわけだから
607を読めばスレッド以前にC言語の理解さえ怪しいものだとわかるだろう。
スレッドどころか、プログラミングのど素人ってことだな。
>>641 その後のコード見れば、さすがにキャストの事は知ってるように見えるが…
安全かどうかの問いでしょ。
MSDNで調べればわかることを何やってんだか
だってMSDNって糞だもん。 無駄に容量食う、構成が悪く読みにくい、解りにくい の3拍子そろってる。
>>645 はいはい。今度からは引数くらいはマニュアルで調べるように
習慣をつけてね。
647 :
デフォルトの名無しさん :2005/04/14(木) 09:11:34
まあ人にさんざ聞いて育ったバカほど 「人に聞くな 自分で調べろ」 って言うもんで
初心者ならではの煽り方だなぁ ;-)
652 :
デフォルトの名無しさん :2005/04/14(木) 09:58:10
C言語ならママに聞け
653 :
デフォルトの名無しさん :2005/04/14(木) 10:17:26
質問です。 当方文系の大学院生で, 今後,情報系の方とコラボレートしてロボット開発に携わる予定です。 私は,人間研究の専門家として,意見を提示する立場になると思います。 しかし,それには,あまりにもプログラミングやシステム開発に関して無知であると思います。 今後の有益な議論のためにこの点の知識や技術をつけようと思います。 ひとまず,現代のロボット開発には, どのような知識や技術が求められているのでしょうか。 全くの初心者なのでとっかかりをご教授頂けたら助かります。
>>653 論理学
認知科学
ヒューマンインターフェース
電子工学
プログラミング
データベース
657 :
653 :2005/04/14(木) 11:14:28
ごめんなさい,ちょっと説明が足りてませんでしたね 私は,ヒューマンインターフェイスや認知科学系の専門家なのですが, プログラミングの方は全くの素人なのです。 特にヒューマンインターフェイスの研究から得られた知見を開発側に返そうとすると, どうしても,開発の側の視点に立つ必要があると思います。 そして,それにはプログラミングなどの知識が必要不可欠であると思います。 そこで,特にロボット開発に限定した上で, プログラミング等の知識をつける場合, どのような勉強をすれば一番効率がいいか, その点をご教授して頂ければと思っています。
>>657 ロボット開発というのは総合科学なんだ。
だから、ロボット開発に限定したプログラミングの知識、と言ってもほとんどの分野で先端的な研究の成果を集めたもの
でもあるので、1日2日で知識が付けられるようなものではない。
つまり、ある一つの要素技術自体がすでに一つの研究分野として見られているからだ。
実際に君ができることは、あるプログラムからアルゴリズムを理解することと、自分の考えたアルゴリズムを人に伝える
技術を身に着けることだ。具体的にはアルゴリズムイントロダクションを読んでください。
あと、あったほうが良いのは数理論理学と計算量理論の基礎知識。
これがないとおおよそ実現不可能なことを言い出しかねない。
どうでもいいことだが、ヒューマンインターフェースの専門家というのも結構怪しいもんだ。
なぜなら、HIという分野がつい最近になってできた物だから。
ほら、有名な人でもかなり若いし。増井さんとか。
あと、プログラミングができない人間がHI専門家を名乗れるのだろうか…
認知科学はわりと分野の重なったところでもあるので、理学・工学以外の人間も参加しているよね。
文系の学生なのに「ヒューマンインターフェイスや認知科学系の専門家」ぁ? いかがわしすぎる
661 :
639 :2005/04/14(木) 12:05:06
midiを再生する関数はなんでもいいです。 とにかく音楽を再生している最中に、 テンポをあげたり下げたりする(このとき音の高さは変わらない) 方法があればご教授ください。
> midiを再生する関数はなんでもいい DQN 決定。
> (このとき音の高さは変わらない) DQN 決定。
> ご教授 DQN 決定。
666 :
653 :
2005/04/14(木) 13:02:08 >>659 非常に具体的で分かりやすいご教授ありがとうございます。
やるべきことが明確になりました。助かりました。
私がHIの専門家と言えるかは他者の判断にまかせます。
私のやっているようなアプローチもその一つとしてありだと思います。
>>660 665
旧帝の院にはだいたい,私のやっているような文理横断的な研究科があります。