INTEL厨 vs AMD厨 Part33

このエントリーをはてなブックマークに追加
873某スレの5 ◆ZU9pwK980k
おいら君用のねただろうと何だろうと

 録 音 自 身 が 間 違 い に 気 づ か ず に
 そ の ま ま 鵜 呑 み に し た 事 実 は 変 わ ら な い。

今になって必死に防戦しても無駄だってことになぜ気づかないんだろうな。

バイトオーダーがらみのネタはC言語だとunion使うと楽に説明できるけどさ。
サンプルコード書いてごらん>>録音

874 ◆Rb.XJ8VXow :04/05/26 11:15 ID:aldvswCf
>>872
言ってること判らんかなぁ?
通信で受け手編集は当たり前ってことなんだが・・・
そしてその編集に「バイトオーダーの違い」も含まれるってことな。
875某スレの5 ◆ZU9pwK980k :04/05/26 11:22 ID:t8ht+v9t
>>874
具体的事例をあげて実証してくれないか?
^^^^^^^^^^^
876Socket774:04/05/26 11:25 ID:jb/m22Yi
>>872
まったく関係無い話かもしれないし、ネットワークの仕事についても知らないけど、
実務でソケットを利用して、バイトオーダーの変換する必要がある場面って
「現在」ではもうほとんど残ってないんじゃないかな?
主要なサービスのプロトコルは大体telnet互換でテキスト形式での通信だし、
バイナリの送受信は大抵オクテットストリームじゃない?

RPCにしても、XML RPCとかの話題が大きくて互換性の低いバイナリ形式での通信なんて
古ーい独自アプリや、他に標準的なものとしては唯一EBMLが残っているようなものだと思うんだよね。
でも、当たり前なんて言ってのけるほどEBMLは普及していないし。アプリケーションが扱うレイヤで
ネットワークバイトオーダーが当然、当たり前みたいな話を見ると違和感を感じる。
正しい作法と言うのならまだしも。

ネトゲとかは、プラットフォーム間の互換を考えなくて良いせいか、リトルのまま送受信してる事もあるし。
ネットワークバイトオーダーの議論は、socket FAQとかかじっただけの人間も混じっていてややこしくなっている気がするんだよね。
877Socket774:04/05/26 11:34 ID:DFgX/Vp2
>>876
言いたいことは分かるけど、どういう話の流れになっているか
遡って見てみてはどうでしょう?
うんざりするかも知れんけどねw
878Socket774:04/05/26 11:35 ID:IuRwlEhV
>>876
まともな意見だね。

>>874の前だったら録音のアシストになったけど、後だから関係ないしね。
879Socket774:04/05/26 11:39 ID:jb/m22Yi
>>877-878
あー悪いね、これは純粋に興味からの質問。
趣味でネトゲのBOT解析とか、MUAとか作った事もあるけど
よくよく考えてみるとポート指定と、(使われる事の無い)通信ライブラリの製作以外で
バイトオーダー変換した事無いんだよね。

普通は、普通は〜なんて言ってるのみてると、
実際にそういう仕事も残っているのかなという気がしてるだけ。

だいたい、録音が言う「バイトオーダーの変換は必要ない」とは違う意見でしょ?
880Socket774:04/05/26 11:43 ID:GYs9kxQc
俺には業務アプリのプログラマと研究開発や学生プログラマがそれぞれの分野で言いたいことを
言ってるだけにしか見えんけど。最初から話の前提や分野がかみ合ってないんだから、
議論にもなってない。不毛な言い争いだな。まあ、それぞれの主眼の違いは良く分かるがな
881 ◆Rb.XJ8VXow :04/05/26 11:45 ID:aldvswCf
>>873
unonねぇ〜(笑

void swap (unsigned char x, unsigned char y);
int main(int argc, char* argv[])
{
static union{
 unsigned short iPort;
  union {
   unsigned char cPort[2];
  };
 };
 printf("[漢字,%d,%X]\n",0x5e*0x5e,0x5e*0x5e/0xbc+0x81+0x40);
 return (0);
}

void swap (unsigned char x, unsigned char y){
 unsigned char tmp;
 tmp = x;
 x = y;
 y = tmp;
}
882 ◆Rb.XJ8VXow :04/05/26 11:47 ID:aldvswCf
ははは、コピペまちがった(笑

void swap (unsigned char x, unsigned char y);
int main(int argc, char* argv[])
{
static union{
 unsigned short iPort;
  union {
   unsigned char cPort[2];
  };
 };
 iPort=0xFFEE;
 printf("[変換前:%X:" ,iPort);
 swap(cPort[0],cPort[1]);
 printf( "変換後:%X%X]\n",cPort[0],cPort[1]);
 return (0);
}

void swap (unsigned char x, unsigned char y){
 unsigned char tmp;
 tmp = x;
 x = y;
 y = tmp;
}
883Socket774:04/05/26 11:51 ID:/gEBNO0f
どこからのコピペですかぁ?w
884Socket774:04/05/26 11:52 ID:/gEBNO0f
そうか、やっぱり本かサイトからのコピペか。
やっぱり書けない&理解してない
885 ◆Rb.XJ8VXow :04/05/26 11:53 ID:aldvswCf
>>883
うん、自分で作ったソースからのコピペです♪
886Socket774:04/05/26 11:57 ID:Mi+HqO2H
自演乙
887Socket774:04/05/26 12:04 ID:jb/m22Yi
>>882
それは何? 自分で何を書いたか理解してる?
888Socket774:04/05/26 12:06 ID:XV9M15lJ
おいら殿、朝からお疲れ様ですた
貴方の発言は痛いけれど、録音が分身魔球を必ず投げてくるので
見世物としては非常に面白いでつ
特に今朝は録音が昨夜の鬱憤を晴らさんが為の
バレバレの自演で責めたててましたね

これに懲りずにまた録音をからかってやって下さい
889 ◆Rb.XJ8VXow :04/05/26 12:08 ID:aldvswCf
>>880
えっと、受信バッファはchar型ポインタなのよね。
業務用ソフトだと送受信されるデータフォーマットが単一あるいは複数決められることになる。
そして、そのフォーマットに合わせて読解する必要があるのだけど、いちいち構造体を定義するの
邪魔臭かったりするし、フォーマット構造自体を外部パラメータから読み込んだりするから結局、変換ルーチンで
処理することになるんだよ。
そうするとバイトオーダーを送信時に変換したりするの邪魔臭くなる。
って言うか、行儀の悪い相手とも送受信したりするからどちらにも対応しなけりゃならなくなり
結局は自分で変換する羽目になるのよ。
変換条件は相手先だったりするのな。(処理系ではない)
890 ◆Rb.XJ8VXow :04/05/26 12:11 ID:aldvswCf
とまぁ、開発に携わってない人との違いを披露したりする♪
891Socket774:04/05/26 12:13 ID:IuRwlEhV
>いちいち構造体を定義するの邪魔臭かったりするし、フォーマット構造自体を外部パラメータから
>読み込んだりするから結局、変換ルーチンで処理することになるんだよ。

お願いですから糞プログラムは脳内だけにして世間に出さないでください。
892 ◆z24Qe9iaKM :04/05/26 12:14 ID:2L7tYdPq
>>876
>ネットワークバイトオーダーが当然、当たり前みたいな話を見ると違和感を感じる。
抜き出しレスで悪いけど、たぶんこれは誰も主張してなかったと思う。
録音も含めて。

むしろ言い方としては
「バイナリを扱うなら、(プロトコル)設計段階でバイトオーダーなんて決めるだろ?」<漏れ
「実装段階で気をつけなきゃいけない」<録音
この争い。

録音は、いかに糞設計なアプリばかりやってきたかを披露してるだけって感じ。
>>889の内容もまさにそれ。
893Socket774:04/05/26 12:16 ID:JwJ8saVd
>880

>業務アプリのプログラマと研究開発や学生プログラマがそれぞれの

ネタか釣り?先生の居場所がどこにもありませんが?
894Socket774:04/05/26 12:16 ID:XV9M15lJ
>>890
やっと開発経験が無い事を白状したね
895Socket774:04/05/26 12:19 ID:/gEBNO0f
今日の遁走はいつ?ワクワク
896Socket774:04/05/26 12:25 ID:jb/m22Yi
>>892
なるほどね、仕事とか環境っていう単語が頻繁に飛び交うから
実際にそういう開発している人間がいるのかなぁと思ってたんだけど、
根本的に違って、仮定の議論だったのね。
今風で言うなら「そんな仕事は無い(ほぼ)」の一言で終わりそうなもんだけど。

実装の段階で気をつけなくちゃいけないのは、
プロトコルの仕様と矛盾しない事(それにオーダー変換も入る)だね。

録音の糞仕事証明はいいとして、882のようなものをたくさん出させるとこのスレも楽しいんだけどな。
897397:04/05/26 12:30 ID:mSISE4nL
>889 録音君よ。
>受信バッファはchar型ポインタ

・・・本当にそれでいいのか?
C++でクラス使ってたら悲惨なことになりかねんぞ?
C++じゃなくとも、Socketに割り当てられたメモリが開放されたらどうするんだ?

アプリケーションデータについてはもまいさんの言うことはかならずしも
間違っちゃいないが、
それ以前の段階(ネットワークやCの基本知識含めて)が、
危ないコーディングにつながる発言ばかりだな。
898MILDSEVEN ◆zkkB4yWNU2 :04/05/26 12:30 ID:Tp4XkLHA
>889
やっとそれらしき情報を入手してきたようだな・・・
所々録音語が入っていて分かりにくいが、いいたいことはなんとか
理解出来る(もうちょっと妄想からくる録音語減らせ)
しかし内容に同意は出来ない

何故ならそんなのは環境(ハード含)と要求仕様により変わるからだ
普通、そういった主張をするのならどういった環境にあるのかの説明も
付け加えるのは「常識」
しかも理由が「邪魔くさい」ってまるっきり子供の主張w
899T.A.:04/05/26 12:33 ID:Aq6Y5Ln7
録音に質問。
年収5000万だそうだけど、今、人月単価幾ら位で受注してんの?

先進的な外資系企業でも国内では、成果型発注やFP見積りは「外部発注」に関しては
採用しているところはほとんどないから、人月単価で受注時の見積りを出すと思うけど?

900 ◆z24Qe9iaKM :04/05/26 12:34 ID:2L7tYdPq
>>896
仮定、ではないな。
少なくとも漏れが経験したシステムで、他システム接続の設計をさぼって
上手く行ったシステムはひとつもない。
既存プロトコル流用のファイル転送ですら色々問題を出すわけで。

でも、プロトコル設計からきっちりやったとこは、だいたい上手く行ってた。
WS-小型機-汎用機
みたいなやつを、OSI7層+ベンダー独自プロトコルとかで繋いでいた訳で。
ちゃんとやらんと接続すらままならないからね。

901Socket774:04/05/26 12:34 ID:JwJ8saVd
>899

時給500円だから関係ないよ。
902MILDSEVEN ◆zkkB4yWNU2 :04/05/26 12:39 ID:Tp4XkLHA
>882
昨日も前回の宿題張っていて思ったんだが、
それさ・・・どっかで見かけたようなソースなんだが・・・

始めはfor文も知らないアフォが頑張っているのぉと思っていたんだが
3回目でいきなり動きそうなソース張ってきたからw
903 ◆Rb.XJ8VXow :04/05/26 12:40 ID:aldvswCf
>>899
相手によって色々だが見積もり時の単価は、100〜60/人月ってところですね。
904Socket774:04/05/26 12:41 ID:IuRwlEhV
>>900
「クラサバ」以前の旧・旧世代のシステムとの接続なんて場合は必要だよね。
でも、まともな設計ならGWを別に実装してプロトコル変換と他のロジックは分けるだろうね。
>>889は糞プログラムの連鎖を断ち切れないので論外。
905Socket774:04/05/26 12:44 ID:GYs9kxQc
アプリケーションサーバを使わずにC/Sシステムを構築する場合、
マシン間の通信データ(数値だろうが文字だろうが)をただのテキスト
として扱うのは珍しくないな。(ただcharポインタではなくてchar配列な)

ただ、テキストといっても基本的な仕様は決める。
汎用的にしたいならCSV形式とあとは改行コードを規定しとけばいい。
で、それぞれのレコードと項目をどのように使うかはアプリ次第。
まあ、これをやるとアプリ毎にデータ構造がバラバラになって
後で収集が付かないことがあるけど、設計がしっかりしてればまあ大丈夫。
基本的に、専用のデータ構造を設計したり、そのパーサなんてものは作らない。
作ってるだけで工数食つぶすからな。つーか、そんなも作るくらいなら
フリーのORBやEJBを使うってばさ。

>>900
> WS-小型機-汎用機
それ世間一般のSEから見たら、ものすごくレアケースだと思うぞ

906397:04/05/26 12:44 ID:mSISE4nL
>903
質問は単価なんだけど・・・

ちなみに、SEで80万位だな。
漏れは。
907Socket774:04/05/26 12:45 ID:XV9M15lJ
>>903
はぁ?
908T.A.:04/05/26 12:47 ID:Aq6Y5Ln7
>>903
仮に「年収」が「年間売上」の勘違いだとしても、450万/月は売り上げないと5000万は
厳しいはずだけど?
「年収」ともなると税金・経費・その他諸々があるから更に厳しいね。(w

909Socket774:04/05/26 12:47 ID:jb/m22Yi
>>902
ネタ以外じゃどこかで見かけることは無いと思うけど。
入れ替え結果を破棄するswapとか、無意味なunionの使い方とか
そもそもトップレベルにある無名unionとか。
910 ◆Rb.XJ8VXow :04/05/26 12:47 ID:aldvswCf
>>906
私のところは請負です。
設計もするしプログラムも組む。
911MILDSEVEN ◆zkkB4yWNU2 :04/05/26 12:48 ID:Tp4XkLHA
>903
失笑した(ガンバレ無職)
そして昼休みおしまい
912 ◆Rb.XJ8VXow :04/05/26 12:48 ID:aldvswCf
>>908
ほい、もっとあるから心配ご無用。
913 ◆z24Qe9iaKM :04/05/26 12:48 ID:2L7tYdPq
>>905
>> WS-小型機-汎用機
>それ世間一般のSEから見たら、ものすごくレアケースだと思うぞ
あー言葉足らずだったスマソ

確かにこの接続はレアだわな。
顧客限定の製品だったし。
でも、実装プロトコルはベンダー内汎用だったのよ。
つまり、WSにも小型機にも汎用機にも実装されてて
多数の製品で使用されてたプロトコル体系ね。

914Socket774:04/05/26 12:50 ID:jb/m22Yi
>>900
やっぱり実務は知らんから、「なるほど、あるんだね」としか言えんけど。
測定器とか弄る仕事以外で、プロトコルから設計する仕事が
まだ存在していることに少なからず驚きを感じだリ。
そんな低レベルなこと、子供の遊びや学習でしかやらないって思ってたので。
915 ◆Rb.XJ8VXow :04/05/26 12:52 ID:aldvswCf
>>909
ふふふ、ごもっとも♪
まぁ、無意味なことを要求されれば、無意味に返すのが礼儀でしょう♪
916Socket774:04/05/26 12:56 ID:XV9M15lJ
>>914
録音のは子供の遊びや学習だから気にするな
917Socket774:04/05/26 12:58 ID:IuRwlEhV
>>914
今の潮流からすればレアケースだろう。
低レベルってのはちょっと視野がせまいんじゃないの?
下位レイヤーをエレガントに設計・実装できる「部品屋」は貴重だぞ。

優秀な「アプリ屋」が優秀な「部品屋」にはなれるとは限らんが、
優秀な「部品屋」は優秀な「アプリ屋」になれると俺は信じている。
918Socket774:04/05/26 13:02 ID:jb/m22Yi
>>917
低レベルってのは程度が低いって話じゃなくて
高級言語低級言語みたいな話で。
919某スレの5 ◆ZU9pwK980k :04/05/26 13:03 ID:t8ht+v9t
>>909
わかってるとは思うけど、これがまともなソースだとは思うなよ。
そもそもコンパイルさえ出来ない。

C言語についてまるっきり無知だってバレバレのソースだね。
920Socket774:04/05/26 13:03 ID:fxzvtNty
>>917
優秀なアプリ屋には人とのコミュニケーション能力が大切。
優秀な「部品屋」が優秀な「アプリ屋」になるにはこれがあるかどうかが分岐点だろうな
少なくともこのスレで先生と呼ばれている御人には絶対に出来ない事だけどねw
921某スレの5 ◆ZU9pwK980k :04/05/26 13:04 ID:t8ht+v9t
>>915
無意味に返すと言い張る以前に、
どうやったらこんな使えないコードが書けるのかと。

要は無知だって事がばれてるんだよ。
922 ◆Rb.XJ8VXow :04/05/26 13:05 ID:aldvswCf
>>918
そりゃちと変だろう?
「子供の遊びや学習でしかやらない」に繋がるとは思えないが・・・
今時、基礎の基礎をしっかり勉強している人は少ないと思うのだが・・・
私の周りには居ないぜ > 若手で基礎がしっかりしている人。

やはり幾ら勉強しても実務経験がないと頭でっかちってことなんだろうな。
923Socket774:04/05/26 13:07 ID:fxzvtNty
>>922
相変わらず自分自身の分析は鋭い様で・・・
924Socket774:04/05/26 13:08 ID:/dxOBD1c
>>882
885 名前: ◆Rb.XJ8VXow 投稿日:04/05/26 11:53 ID:aldvswCf
>>883
うん、自分で作ったソースからのコピペです♪

恥じ晒すのはそろそろ止めといたら?
925 ◆Rb.XJ8VXow :04/05/26 13:12 ID:aldvswCf
>>921
おいおい、変なこと言うなよ!
ちゃんとワーニングもなくコンパイルされるし、実行結果も正しいぜ♪
全角空白ぐらいは直せよ。
926Socket774:04/05/26 13:13 ID:IuRwlEhV
>>917
ひょっとしてそうかな?とは思ったんだけど…
文章書くときに面倒だから別のいい表現が欲しいですね。

>>920
アプリ屋=SEならわからんでもないが、そうでないならまともな仕様書が作れれば
コミュニケーション能力は重要ではないでしょ。周りの能力が低ければ浮くかもしれん。

もちろん録音は論外。
927926:04/05/26 13:14 ID:IuRwlEhV
ミスした!!
>>917>>918の間違い。
928Socket774:04/05/26 13:17 ID:IuRwlEhV
>>922
好意的解釈。

実務経験も豊富で基礎もしっかりできていて幅広い知識があるのに
とてもそうは思えない文章や表現ができる録音の能力は天才的である。
929Socket774:04/05/26 13:19 ID:fxzvtNty
>>926
まあ場所によってSEの仕事の範囲が違うから一概に言えないけれど
業務仕様を作るにはコミュニケーション能力は必須だよね
プロ仕であればそんなに必要ないかな

まあ、確かに周りの能力が低くて浮いちゃってる可哀相な香具師もたまに居るけどねw

>もちろん録音は論外。
御意。
930某スレの5 ◆ZU9pwK980k :04/05/26 13:19 ID:t8ht+v9t
>>925
コンパイルできる処理系を言ってみろ。
931Socket774:04/05/26 13:20 ID:jb/m22Yi
>>926
程度が低いなんて言えないよ、それで飯食ってる人はエライもんです。

>>922
低レベルな部分を請け負うミドルウェアがあふれている以上、
そういうところから作るのは金と時間の無駄だろうに。
車輪の再発明でお金もらえるなんてうらやましいね。

しかも、それを「基礎」と言ってのけるとは恐れ入る。
932 ◆Rb.XJ8VXow :04/05/26 13:20 ID:aldvswCf
>>928
うんうん、そこが君等凡人には読めない部分だろうね♪
まぁ、もう少し注意深い視野が形成されておれば少しは何とかなるのだけど・・
その程度だと「顧客がバカだから設計ミスするのは当然です」って結末だろうな(笑
933 ◆Rb.XJ8VXow :04/05/26 13:22 ID:aldvswCf
>>930
そんなの邪魔臭いからUPローダ書いてね♪
ソースとexeUPしてあげるからね♪
934Socket774:04/05/26 13:26 ID:O98BhBkK
>933
過去に示されたアップローダも使えない池沼ですか?
935Socket774:04/05/26 13:26 ID:jb/m22Yi
936Socket774:04/05/26 13:26 ID:fxzvtNty
>>933
翻訳して欲しい?
937某スレの5 ◆ZU9pwK980k :04/05/26 13:27 ID:t8ht+v9t
>>933
全角スペースの事は承知済みなんで無駄だからね。

要はコンパイルできない事が確定するから逃げてるわけだな。
Cの文法知ってればコンパイルできない事ぐらいわかるだろうに。

ま、それぐらい録音は無知な事が証明されたわけです。
938Socket774:04/05/26 13:28 ID:jb/m22Yi
>>937
バイナリが上がってくれば、大体の処理系は判別できるからそれまで待てば良いいいい
939Socket774:04/05/26 13:29 ID:ZQ0h2cYI
>>936
お願いします
940Socket774:04/05/26 13:32 ID:fxzvtNty
>>933
>>930
>そんなの邪魔臭いからUPローダ書いてね♪
>ソースとexeUPしてあげるからね♪
翻訳っす。
>>930
そんな事(Cコンパイラ持ってないのに)書けるかよ。(よし誤魔化せ!)UPローダ書いてね♪
(ネットのどこかで拾ってきた)ソースとexeUPしてあげるからね♪
941Socket774:04/05/26 13:34 ID:IuRwlEhV
録音のソースを見たが…酷いな。

>いちいち構造体を定義するの邪魔臭かったりするし

単に構造体作れないだけじゃねーのか?
942Socket774:04/05/26 13:36 ID:XV9M15lJ
そろそろ遁走かな
943Socket774:04/05/26 13:37 ID:IuRwlEhV
自己レス

>単に構造体作れないだけじゃねーのか?

と思ったのだが、その下を見てそれ以前の問題だと認識した…このソースは何がしたいのだ?
944Socket774:04/05/26 13:37 ID:/dxOBD1c
コンパイル報告
■I:\Program\test> bcc32 -v r.c
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
r.c:
エラー E2451 r.c 12: 未定義のシンボル iPort(関数 main )
エラー E2451 r.c 14: 未定義のシンボル cPort(関数 main )
警告 W8057 r.c 17: パラメータ 'argc' は一度も使用されない(関数 main )
警告 W8057 r.c 17: パラメータ 'argv' は一度も使用されない(関数 main )
*** 2 errors in Compile ***
少なくともBccじゃ怒られますな。
stdio.hはincludeしておいたし、全角も直したよ、念のため。
945 ◆Rb.XJ8VXow :04/05/26 13:38 ID:aldvswCf
>>937
946Socket774:04/05/26 13:39 ID:fxzvtNty
>>945
>>944

プ
947Socket774:04/05/26 13:42 ID:XV9M15lJ
>>945
今までに無く必死ですね♪
948Socket774:04/05/26 13:44 ID:/dxOBD1c
で、コンパイル通るようにしたけどupしようか?
意味の無いプログラムだけどな。
949某スレの5 ◆ZU9pwK980k :04/05/26 13:46 ID:t8ht+v9t
>>948
録音にエサを与えないでください。
どこがどう間違ってるかはもう>>944でわかるんだし。
950 ◆Rb.XJ8VXow :04/05/26 13:46 ID:aldvswCf
面白いですね♪
意地悪すると楽しいですね♪

ちなみにC++でよろよろ(笑
951Socket774:04/05/26 13:46 ID:IuRwlEhV
気づいた点を加えてください。

録音のC

・gotoが無い。
・call by valueで無い。
・unionが独自仕様。
952Socket774:04/05/26 13:47 ID:/dxOBD1c
>>949
了解。
>>950
・・・必死ですな、哀れな。
953Socket774:04/05/26 13:51 ID:fxzvtNty
>>950
>面白いですね♪
>意地悪すると楽しいですね♪

>ちなみにC++でよろよろ(笑
翻訳だよ

やべーばれちまったよ。゚(゚´Д`゚)゚。
何で皆な俺(録音)に意地悪するんだよ。゚(゚´Д`゚)゚。

(こうなったら、誤魔化しちまえ)
ちなみにC++でよろよろ(泣
(ふぅなんとか誤魔化せたかな?でもC++って何だろう??)
954 ◆Rb.XJ8VXow :04/05/26 13:51 ID:aldvswCf
まぁ、これでC++すら知らない人が多いってことが判ったと言うことで・・・
しかしほんとに君等は素人なんだな。(ポカーン
955 ◆Rb.XJ8VXow :04/05/26 13:53 ID:aldvswCf
もちろん VC++ な♪
956某スレの5 ◆ZU9pwK980k :04/05/26 13:54 ID:t8ht+v9t
>>954
俺は設問でC言語でと言ってるんだけどね。
確かに特定のC++処理系では通るけど、
他のC++処理系では通らない事も確認済みだよ。

957 ◆Rb.XJ8VXow :04/05/26 13:56 ID:aldvswCf
>>956
VC++を君が知らないことが判って私は満足ですぜ♪
無意味で無くなったな(笑
958Socket774:04/05/26 14:00 ID:hhNn3A6f
>>954
swap()って何やってるの?
959Socket774:04/05/26 14:01 ID:IuRwlEhV
>VC++を君が知らないことが判って私は満足ですぜ♪

どちらかと言えば録音がVC++しかしらないってのがバレバレ。
ポータビリティのないコードを晒して恥ずかしくはないのかねぇ。
960Socket774:04/05/26 14:01 ID:jb/m22Yi
>>955
あー、でも面白ぇ文法知ってるのな。comeauもstrictモードで通った。
ちなみに、gccはコンパイルだけ通った。リンクできなかったが。
961 ◆Rb.XJ8VXow :04/05/26 14:02 ID:aldvswCf
>>958
xとyの入れ替えをしているんだよ♪

>>959
うんうん♪
962某スレの5 ◆ZU9pwK980k :04/05/26 14:02 ID:t8ht+v9t
>>956
全然、C言語でという設定で質問したのに通らないコードをよこしてきて、
あわててVC++としている必死な姿が良くわかっただけだよ。

でもな、VC++はC++としては問題が多すぎる処理系だ
ということがわかっていればこんなコードは書かないわけ。
(このあたりの詳細を録音が知らない事もわかったわけだ)

録音が素人である事が更にばれるだけなんだよ。
unionの使い方にせよ。関数の内部にせよ。素人レベルだしね。

963 ◆Rb.XJ8VXow :04/05/26 14:04 ID:aldvswCf
>>960
まー特殊ですな。
それ思い付いたから、ソース書いてみたんだけどね♪
964某スレの5 ◆ZU9pwK980k :04/05/26 14:04 ID:t8ht+v9t
>>960
名前空間の問題が有りますから。
VC++はそのあたりも雑だし。
965Socket774:04/05/26 14:07 ID:hhNn3A6f
>>961
じゃーさ、aaa.cとaaa.cからswap()部分を削った場合とでは
出力結果は変わるってこと?
966Socket774:04/05/26 14:07 ID:Ju2rRfAC
図らずともそうなった可能性を捨てきれない俺w
967Socket774:04/05/26 14:07 ID:/dxOBD1c
たしかにC++なら通る処理系もあるけど、何でこんな無駄な書き方してるのやら。
C++の目的考えたら、こんな無名union使うのはアフォとしか思えんし。
てか、C言語でっていわれてC++で書いてくる時点で問題外なうえに、そこに目をつぶったとしても
正しくないプログラムなんですが。
968某スレの5 ◆ZU9pwK980k :04/05/26 14:07 ID:t8ht+v9t
で、致命的なのはVC++でソースをC言語として
コンパイルすると即座にエラーが出る事ですな。
(拡張子が.cか.cppかレベルの違い)

だから録音はVC++の標準の操作しか知らないんじゃないかな。
969Socket774:04/05/26 14:11 ID:GYs9kxQc
というか、録音はVC++使ってるってT.A氏が言ってたやん
録音叩くならそのへんの事を考慮して、あのソースが
出た時点で一発ガツンとツッコまなきゃ。のらりくらりと
やってるから何時までも進展がないんじゃないか?
970L ◆eruX6eXBcA :04/05/26 14:11 ID:DUt+Ljrv
>>962
VC++は2002以降(VC++7.0?)はC++準拠度がかなり上がってるそうです。

自宅に2003があるので帰ったらコンパイルして報告してみますね。

まぁ、コンパイル通らないだろうけど。
# 明らかに間違ってる部分に気づかないってのもアレだねぇ…
971Socket774:04/05/26 14:12 ID:jb/m22Yi
>>966
俺もそう思うけど、あまりそれをつついても出したソースが
コンパイル通る以上、負け犬の遠吠えっぽいから、言えないw

>>967
多分、あの書き方規格と矛盾はしてないんじゃないの?
gccは-Wallでwarning出さないし、comeauのstrictモードでも通る。
VC++の非難も俺が使っている以上あんまりしたくないし、MS拡張切ってもコンパイル通る。
7.1なら標準準拠度もトップクラスだしね。
972某スレの5 ◆ZU9pwK980k :04/05/26 14:13 ID:t8ht+v9t
>>970
すまんが俺がVS.NET2003で試した。
973Socket774:04/05/26 14:16 ID:zGN1uJd4
ところでいつになったら、うpすんの?
974Socket774:04/05/26 14:16 ID:aM9cTe78
録音の作ったswapってウェイトのためにあるのですか?
しかも何のためのunionなんだか…( ゚Д゚)ポカーン
975某スレの5 ◆ZU9pwK980k :04/05/26 14:17 ID:t8ht+v9t
>>967
g++ではコンパイル自体は通る。(無論gccは駄目)
だけど名前空間の問題でリンクが出来ないんだよ。
976Socket774:04/05/26 14:17 ID:/dxOBD1c
>>971
矛盾はして無いのかもしれないけど(C++の規格調べた事無いから)、
意味の無いunionがある時点でプログラムとしてどうかと。
名前空間の汚染の問題があるし。

まぁ、あのプログラム自体が何の意味も持たないけどさ。
977Socket774:04/05/26 14:19 ID:Ju2rRfAC
>>971
あなたが褒め言葉を言った直後に誰かが即レスしてたんでw
978 ◆Rb.XJ8VXow :04/05/26 14:19 ID:aldvswCf
まぁ、無名共用体の特殊系ってとこでよろよろ。
しかしこれほど楽しめるとは思えなかったよん♪

カキコした甲斐があった、よかったよかった。
979Socket774:04/05/26 14:21 ID:zmdqLqt3


  録 音 が 無 茶 苦 茶 必 死 に な っ て る

980Socket774:04/05/26 14:21 ID:kZu7rRmQ
録音のバカッぷりが楽しめただけだね

よかったよかった
981Socket774:04/05/26 14:21 ID:/dxOBD1c
>>978
設問の答えになってないぞ。
アレが答えだというなら、何も判って無いって事でFAだな。

982某スレの5 ◆ZU9pwK980k :04/05/26 14:22 ID:t8ht+v9t
>>978
設問でC言語、と限定してあるんだけどね。
VC++のC++モードで処理できても間違いは間違いさ。

録音がC言語の文法を知らない事は確定したね。
983Socket774:04/05/26 14:24 ID:ZQ0h2cYI
録音は日本語も理解できないからね
984L ◆eruX6eXBcA :04/05/26 14:24 ID:DUt+Ljrv
えーと既に2003でコンパイルして実証済みということなので
会社の環境(VC++6.0)でビルド&実行結果

[変換前:FFEE:変換後:EEFF]

??

swapって関数何がやりたいのかわからんのだけど。
# ここまで指摘したら間違いは気づくよなぁ。
985 ◆Rb.XJ8VXow :04/05/26 14:25 ID:aldvswCf
>>974
意地悪ソフトで良いんじゃないか?(笑
ちなみに、swap()は何にもしていないからね♪
でも、swapの中だと、ちゃんと交換しているんだよ。

とまぁ、非常に楽しいソフトなんですな。
986Socket774:04/05/26 14:27 ID:3ZpcpAw2
889 名前: ◆Rb.XJ8VXow [sage] 投稿日:04/05/26 12:08 ID:aldvswCf
> >>880
> えっと、受信バッファはchar型ポインタなのよね。

ここ笑うところですか?
987Socket774:04/05/26 14:27 ID:jb/m22Yi
>>976
まあ、そうだけどスタイルにケチつけるのは流石に蛇足っぽいし
なんか負け犬の遠吠えっぽくて悔しいじゃない。
とりあえず、文法について突っ込むと俺が恥かくかもしれないし、
確信も無いのに間違っていると結論付けられない。

unionのインスタンスを作っていないから、
コンパイルが通ったとしても間違ったプログラムである事に変わりないけどね。
988Socket774:04/05/26 14:27 ID:/dxOBD1c
>>985
じゃ、逆に設問だしてやろう。
C++のままでいいから、設問の答えになるように書き換えてみろ。
ただしC++のやり方でな。
989Socket774:04/05/26 14:28 ID:zmdqLqt3
985 名前: ◆Rb.XJ8VXow 投稿日:04/05/26 14:25 ID:aldvswCf
>>974
意地悪ソフトで良いんじゃないか?(笑
ちなみに、swap()は何にもしていないからね♪
でも、swapの中だと、ちゃんと交換しているんだよ。

とまぁ、非常に楽しいソフトなんですな。





とコピペ元に書いてあるそうです。
990Socket774:04/05/26 14:28 ID:aM9cTe78
>>985

録音に初同意だ。

確かにおまえの馬鹿さと知識の無さがわかってとっても楽しいコードですた。
991Socket774:04/05/26 14:31 ID:/dxOBD1c
>>987
少なくとも全く無駄なunionがある。
あのプログラムでインスタンスが出来るかどうかは規格に規定されてるのか、
それとも実装依存なのかは知らんけど。
992Socket774:04/05/26 14:33 ID:/dxOBD1c
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vccore/html/_core_microsoft_extensions_to_c.asp
ちょっとググったら、MS自ら「ANSI C および ANSI C++ 規格に対する Visual C++ の拡張機能」
と独自拡張であることを認めてますよ?

993Socket774:04/05/26 14:35 ID:njfXH4Iy
            /ヽ       /ヽ
            /  ヽ      / :::::ヽ
  ______ /     ヽ__/ :::::::::ヽ
  | ____ /          ::::::::::::::::::::\
  | |       /  ''''''   '''''':::::::::::::::::::::::::::::::::|  なに?このスレ
  | |       | (●),   、(●)、.::::::::::::::::::::|
  | |      .|    ,,ノ(、_, )ヽ、,, .:::::::::::::::::::::..|
  | |       |    `-=ニ=- ' .::::::::::::::::::::::./
  | |____ ヽ   `ニニ´  .::::::::::::::::::::::::<
  └___/ ̄ ̄        ::::::::::::::::::::::::|
  |\    |              ::::::::::::::::::|
  \ \  \___          ::::::::::::|

994 ◆Rb.XJ8VXow :04/05/26 14:36 ID:aldvswCf
ってことで、ちゃんとしたソフトをそろそろ出しましょうね♪
そうそう、無記名UNIONは気にいったりしてるからそのままね。

void swap (unsigned char *c);
int main(int argc, char* argv[])
{
 static union{
 unsigned short iPort;
 union {
  unsigned char cPort[2];
  };
 };
 iPort=0xFFEE;
 printf("[変換前:%X:" ,iPort);
 swap(cPort);
 printf( "変換後:%X%X]\n",cPort[0],cPort[1]);
 return (0);
}

void swap (unsigned char *c){
 unsigned char tmp;
 tmp = c[0];
 c[0] = c[1];
 c[1] = tmp;
}
995Socket774:04/05/26 14:38 ID:ycDmcM2s
次スレ

INTEL厨 vs AMD厨 Part32
http://pc5.2ch.net/test/read.cgi/jisaku/1085185596/l
996某スレの5 ◆ZU9pwK980k :04/05/26 14:39 ID:t8ht+v9t
>>994
ますます汚くなったな。
いかにも「とりあえず動作すればいい」という素人丸出しのコードだ。
997Socket774:04/05/26 14:39 ID:2WgKjFNR
意味不明ですな。
998Socket774:04/05/26 14:40 ID:ycDmcM2s
ミスった

INTEL厨 vs AMD厨 Part32
http://pc5.2ch.net/test/read.cgi/jisaku/1085185596/
999Socket774:04/05/26 14:41 ID:jb/m22Yi
>>992
>C コンパイラでは
Cでの拡張機能扱いになっているし、無効(/Za)にしても通る。
その線は最初に調べたけど、良くわかんないんだよね。
splintでもwarning吐かないし。
1000Socket774:04/05/26 14:41 ID:0/Jt/wKZ
1000?