C/C++の宿題片付けます 147代目
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2011/03/31(木) 15:35:33.04【質問者へ】
回答者の便宜のため、質問の際は以下を行うことを推奨します。
・質問は【質問テンプレ】を利用してください。
・問題文は、出題されたまま全文を書いてください。
・問題文やコードをリンクするときは、一言内容にについて説明をつけましょう。
・計算問題は数式をあげ、どのような計算をするのか詳しく説明してください。
・エラーは、その詳細と発生した行を書きましょう。エラーメッセージはコピペしてください。
・後から問題に付け足しするのはコラー!!です。付け足しは作業を無駄にしがちです。
・なりすましを防ぐため、トリップを使ってください。名前欄に、「#」に続けて任意の文字列を入力して投稿すると、その文字列を知らない他人に騙られることを防ぐことができます。
【質問テンプレ】
[1] 授業単元:
[2] 問題文(含コード&リンク):
[3] 環境
[3.1] OS: (Windows/Linux/等々)
[3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等)
[3.3] 言語: (C/C++/どちらでも可 のいずれか)
[4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか)
[5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)
【アップローダー==ラウンジ】(質問が長い時はココ使うと便利 回答者もコードが長ければここに)
http://s2.etowns.slyip.net/~c_cpp_homework/cgi-bin/joyful/joyful.cgi
http://codepad.org/ ←遅い時間は重い事があります
http://ideone.com/
【C 関数検索 man on WWW】 http://www.linux.or.jp/JM/index.html
【過去ログ検索】 http://chomework.sakura.ne.jp/
【wiki】 http://www23.atwiki.jp/homework/
前スレ
C/C++の宿題片付けます 146代目
http://hibari.2ch.net/test/read.cgi/tech/1296387672/
0232デフォルトの名無しさん
2011/04/17(日) 19:09:45.68理解したくないね
独りよがりのパクリとかどこのナルシストだよ
分かりやすく言えないのかアホ
>>231
人の嫌がる事を進んでやります(・ω・)
人の嫌がる事を進んでやりまず<ヽ`∀´>←意味が違う
◆QZaw55 cn4c は在日チョンではないかと最近思い始めた
0233デフォルトの名無しさん
2011/04/17(日) 22:20:08.26入社後の配置決定試験の時に出された課題みたいな感じ
確か3時間で仕様通りのコードが書けなければ
3年以内退職を前提とした誓約書書かされたっけ
俺?見事失敗。その代わり3年間はオフィスに10時に
着いて、あとは喫煙室との往復だけで給料貰ったし
ボーナスも出たし結婚もしたし...
今は嫁のツテでIT関連学校の教師
この業界はよほどの素質かよほどのコネが無いと生きていくのは
無理なんじゃね?
とりあえず (1) だけ。
http://hibari.2ch.net/test/read.cgi/tech/1301553333/397
>>233
3時間ですか?ちょっと無理ですねえ。
>>212
とりあえず (1) だけ。
http://hibari.2ch.net/test/read.cgi/tech/1295273862/397
>>233
3時間ですか?ちょっと無理ですねえ。
0236デフォルトの名無しさん
2011/04/17(日) 23:49:58.89お前仕事してんの?ニートだろ?
>ただしあるクラスの2つの教科の平均点が一致している場合はその2つの教科の得点の大小関係は不問として出力する。
もし国語と数学のクラスの平均点が 50 、英語が 70 のとき、
生徒A 国語 100 数学 0 英語 69
生徒B 国語 0 数学 100 英語 71
生徒C 国語 100 数学 0 英語 49
生徒D 国語 0 数学 100 英語 51
この四人のうちどれが出力対象になるのでしょうか?
問題文だけでは、二つの教科の平均点が一致したとき、残りの教科をどう扱うかがはっきりしません。
0239デフォルトの名無しさん
2011/04/18(月) 00:47:15.14日曜日がな一日潰して片付けてあげる人は偉大なのかそれとも...
ちなみに(1)と(2)はmainを共通にすべきじゃないかと...
0240212
2011/04/18(月) 04:45:54.88取り敢えずはお礼を申し上げます。どうもお手数をおかけしました。
実はこの問題研修終了試験の過去問の5重コピーくらいの劣悪な
コピーから写したものです。もういちど調べてみるとやっぱり
グループ数じゃなくてクラス数でした。
ただCodePadは無償じゃないそうなので開くのには躊躇しております。
0242デフォルトの名無しさん
2011/04/18(月) 07:33:57.76自分の力を誇示したいだけだと思われます。そして>>235の
>3時間ですか?ちょっと無理ですねえ。
からも分かるように本当はプログラマ適性がないにも関わらず脅迫的にプログラムに
取り憑かれています。変ですね。
例のスレッドに誘導をはかるべく自分の力を誇示したいだけです。意図したとおりにはなっていませんが。
そして、>>235の
>3時間ですか?ちょっと無理ですねえ。
からも分かるように職業的適性はないアマチュアにも関わらずプログラミングに取り憑かれています。
やっぱり変ですね。
0244デフォルトの名無しさん
2011/04/18(月) 08:20:49.62これってどのくらいのレベルが想定ですか?
最大1000万レコードというあたりが、初学者向けとは思え無いので確認したいのです。
ちょろっと1000万レコード生成と読み込み処理だけコーディングしてみたけど、
IOの時間だけでも結構かかります。前データをオンメモリに展開すると250メガくらい
になります。
最近のPCではこのくらいは屁でもないですが、そこは富豪的アプローチでOK?
これが最大1000レコードで各教科100点満点なら初学者向けだと思います。
1000万レコード、999点満点となると、オーバーフローを気にしなきゃならなくなるので、
かなり注意が必要です。
と思って面倒そうだから見てたけど、どうでしょ>212さん。
0245デフォルトの名無しさん
2011/04/18(月) 08:57:38.371000万レコードのデータ食わせてみたら、とりあえずちゃんと動いているっぽいです。
コードをちゃんと追ってませんが、レコードをノードに展開しながら、
2分木にソートしながら突っ込んでいる感じでしょうか?
でも使用メモリ量は1.5M位だったようなので違うかな。
各関数に何をする関数かを示すヘッダコメントを書くと、だいぶコードが読みやすく
なるので、心がけていただけないでしょうか。
0246デフォルトの名無しさん
2011/04/18(月) 09:05:28.090247デフォルトの名無しさん
2011/04/18(月) 09:58:04.200248デフォルトの名無しさん
2011/04/18(月) 10:52:00.93例のスレッドに誘導をはかるな。スレの邪魔だ。宣伝はあのスレでだけやれ。
他の人の迷惑だ。
>職業的適性はないアマチュアにも関わらずプログラミングに取り憑かれています。
だから変だと思いませんか?なぜそんな趣味レベルの力しかないのにそれで強引に
金儲けをしようとするのですか?自分の力を過大評価しているとは思いませんか?
金儲けとはそんな甘い物じゃありませんよ。
どちらにしろ職業にする力量が明らかに不足しているのにそれで金儲けしようなどとは
いかにも図々しい話です。ナルシスティックで自分に酔っているとしか思えませんね。
0249212
2011/04/18(月) 11:07:29.36なんか凄い空気ですね...
>>212の問題はうちの会社が多分主記憶がMバイトオーダーの
中型UNIX機で業務アプリ開発をやっていた時代の問題じゃ
ないかと...1000万行ってのは当時でもそれほど大きな
データじゃなかったようです。他の過去問にもそのような
数字が出ていますし。ちなみに現在うちの会社が扱っている
のは一案件10億とか100億とかのレコード数当たり前だそうで
す。
0250デフォルトの名無しさん
2011/04/18(月) 11:09:15.47#include<stdio.h>
#include<stdlib.h>
typedef struct tag_hoge_t{
long num;
unsigned long class_bits[(10000+32-1)/32];
}hoge_t;
int bit_count(const hoge_t *hoge){
int i, j, ret=0;
for(i=0;i<sizeof(hoge->class_bits)/sizeof(hoge->class_bits[0]);i++)
for(j=0;j<32;j++) if((hoge->class_bits[i]>>j)&1) ret++;
return ret;
}
int main(int argc, char *argv[]){
hoge_t *hoge=calloc(sizeof(hoge_t), 1000*3);
long i, student_id, class_id, japanese, math, english, score;
FILE *fp=NULL;
if(argc>1) fp=fopen(argv[1], "r");
if(hoge==NULL || fp==NULL) exit(1);
while(fscanf(fp, "%ld %ld %ld %ld %ld", &student_id, &class_id, &japanese, &math, &english)==5){
if(student_id<0 || 99999999<student_id) break;
if(class_id<0 || 9999<class_id) break;
if((japanese<0 || 999<japanese) || (math<0 || 999<math) || (english<0 || 999<english)) break;
score=japanese+math+english;
hoge[score].num++;
hoge[score].class_bits[class_id/32]|=1<<(class_id%32);
}
fclose(fp);
for(i=0;i<1000*3;i++)
if(hoge[i].num) printf("得点:%ld 人数:%ld人 クラス数:%d\n", i, hoge[i].num, bit_count(&hoge[i]));
return 0;
}
0251デフォルトの名無しさん
2011/04/18(月) 11:36:03.44富豪を仮定しないと面倒でない?
>>212 (1)だけ適当に。まともに動いてるのかよく分からん
http://codepad.org/hzssz9EV
0252デフォルトの名無しさん
2011/04/18(月) 11:37:51.410253デフォルトの名無しさん
2011/04/18(月) 12:38:04.43http://codepad.org/Y5lMdhWZ
・(1)、(2)の両方。
・ただし、Windowsでの作成のためLinuxで動かすにはちょっと改変が必要(キャリッジリターンの部分)。
・科目の数が3つとなっているが、遊び心で勝手に3つ以外(5個とか100個とか)可能にした。
そのため、入力するファイルが若干変わり、次のように入力してもらうようにした。
例.
国語\t数学\t英語\t・・・\t理科
12345678\t9012\t345\t567\t・・・\t890
以下略
まぁ、科目増えた分の点数と、1行目に科目名入れるようにしたってだけ。
・テスト行うため、ファイル作成する関数導入(rand()使用、srand()は付けてない)。上記にしたがった書き込みを行う。
・malloc使い過ぎたときのエラー対策が不十分(freeがてけとー)。
・データは、例えばid(8桁)の場合、00011111のように0を省略せずに入力しないとプログラム終了させている。
・わかりやすくを心がけて作ったつもり(遊び心スイッチ入れた後はそんなこと気にしなかった。)。
・ということもあり、計算速度はすげぇ遅い。1000万行はやるな。
テストありがとうござます。
二分木に突っ込んでいるのは、レコードそのものではなく、0+0+0〜999+999+999 の点数を単位としたデータ構造で、
点数ごとに同点数の人数とクラス名の線形リストを持っています。同一点ごとのクラス数は、線形リストに追加された要素の数を最後に勘定することで調べています。
レコードそのものをメモリに全部乗せるのは無理と踏みました。
>>246
プログラムのつくりとしては問題ありません。二分木に一つの要素が追加されるだけになります。
>>247
それは問題ですが、題意に沿うかぎり、0〜999+999+999 の計 3000通り弱ですので、メモリは足りるだろうと踏みました。
>>248
>なぜそんな趣味レベルの力しかないのにそれで強引に金儲けをしようとするのですか?
金儲けじゃありません。モリタポ儲けです。
0255デフォルトの名無しさん
2011/04/18(月) 12:55:41.240-999が3組ある場合の組み合わせが3000通り弱なの?
国語が0点、算数が0-999の1000人と
国語が1点、算数が0-999の1000人と
国語が2点、算数が0-999の1000人で3000通りになってしまったよ。
0256デフォルトの名無しさん
2011/04/18(月) 12:59:10.20>金儲けじゃありません。モリタポ儲けです。
また屁理屈かよ
聞き飽きた
http://auction.moritapo.jp/
これがある以上、金儲けと言われても文句は言えない
0257デフォルトの名無しさん
2011/04/18(月) 14:10:25.18よくわからない
仕事とか勉強とかに必要だからいうのは兎も角
0258デフォルトの名無しさん
2011/04/18(月) 14:21:08.56関係ない人が、目的もなく宿題をやるのは不思議。けどなんかやろうとしてたんだっけか。
日曜大工的なもんだと思えばいいんでないかな。
0259デフォルトの名無しさん
2011/04/18(月) 14:27:56.19少しでも、C言語の周りを活性にしようとしているだけだろ。
肝心のソースコードを晒す場所があまりないからここでということ。
0260デフォルトの名無しさん
2011/04/18(月) 14:38:03.120261デフォルトの名無しさん
2011/04/18(月) 14:39:43.21日曜大工が趣味の人が、日曜大工の輪を広げたいがために
ホームセンターで展覧会を開いていると思えばよい?
それも、何度も拒絶されているにもかかわらず、懲りずに展覧会を開く。
0262デフォルトの名無しさん
2011/04/18(月) 14:42:27.49ヌードになる心境でしょう。
0263デフォルトの名無しさん
2011/04/18(月) 15:06:47.24続々コードが上がってきましたね。
ちょっと読んでみます。
私もまずは1だけです。
ttp://codepad.org/DDlp8Quq
>249
>>212の問題はうちの会社が多分主記憶がMバイトオーダーの
>>中型UNIX機で業務アプリ開発をやっていた時代の問題じゃ
であれば、今上がっているようなコードではダメでしょうね。
すべてのデータをオンメモリに展開するわけにはいかないでしょうから。
点数別に読み込みながら集計して、出力の繰り返しかな?
>ちなみに現在うちの会社が扱っている
>のは一案件10億とか100億とかのレコード数当たり前だそうです。
そういう場合はDB使っているでしょうね。
0264デフォルトの名無しさん
2011/04/18(月) 15:20:00.37読んでねーのにけなすとか馬鹿じゃね
0265デフォルトの名無しさん
2011/04/18(月) 15:33:53.86てか最近はソフト頒布はオプソで原則が浸透しつつあ
るんで、読まざるを得ないことも少なくないけど
0266デフォルトの名無しさん
2011/04/18(月) 16:36:43.100267デフォルトの名無しさん
2011/04/18(月) 16:40:08.27他人のレスを読むのが面白いかどうかというとなんともいえないのと同じで、
反応するためには普通に読むでしょう
0268デフォルトの名無しさん
2011/04/18(月) 17:31:04.34載らないものかと思ってる人にサービスするためのスレ。
宿題であるかなんて関係もない。
>>212
>各教科の得点の和が同じ生徒達のグループについて
国語・数学・英語の総和だけ考えればいいので、個別で0〜999 までなら、総和は 0〜2997 です。この2998通りについて、おのおの出現回数と出現したクラス名を記録しておけばいいわけです。
そういう換金可能性は、どのような「もの」に対しても当てはまることです。
どんな「もの」に対しても当てはまる性質を理由にあげても(それはオークションにかければ理論上どんなものでも換金できます。)それによr営利目的か営利目的でないかを判断することはできないのではないでしょうか。
0271デフォルトの名無しさん
2011/04/18(月) 19:15:44.31対価とることがおかしいんだよ
2ch で対価をとることを規制する規定はありますか?あるのなら URL を示してください。
以上、http://hibari.2ch.net/test/read.cgi/tech/1295273862/ での議論の要約でした。
0273デフォルトの名無しさん
2011/04/18(月) 19:46:24.17対価を取らずに宿題に答えるスレで、
対価を取るスレの宣伝行為はやめろ。
スレの進行の妨害だ
0274デフォルトの名無しさん
2011/04/18(月) 19:49:56.37出題者側もそれに気づいてるから専用スレに出題者が現れないんだろ
0275デフォルトの名無しさん
2011/04/18(月) 19:55:09.77有償スレへのリンクを貼り付ける行為がきわめて悪質。
出題者の望む最大限の行動(すなわち動く C プログラムソースを作成し公開すること)を「妨害」と判断した根拠を示してください。
そういえば、あなたは私を糾弾するばかりで、ひとつもソースを公開していませんね。それこそこのスレの進行を妨害しているのではないでしょうか。
一度くらい、ソースを公開したその同じレスの中で私を批判してみてください。
0277デフォルトの名無しさん
2011/04/18(月) 20:19:17.310278デフォルトの名無しさん
2011/04/18(月) 20:20:26.55http://hibari.2ch.net/test/read.cgi/tech/1295273862/
0279デフォルトの名無しさん
2011/04/18(月) 20:21:55.80巣に帰れカス
0280デフォルトの名無しさん
2011/04/18(月) 22:25:51.70>250
コード読みました。
比較した中では一番シンプルでいいと思います。
読み込んだデータよりも、集計データの方をオンメモリで持ったほうが
小さくていいですね。しかも読みながらビンソートになっているから
パフォーマンスも一番です。
自分のコードも始めに読み込みデータと集計データを、オンメモリに
もつようにしていたのですが、ソートは必要だと思い込んでいました。
そうか、集計時にビンソートになっているから、読み込んだデータのソートは
不要ですね。ソートが必要だと思ったので、メモリ上に読み込んでいたので、
そのことに気づけなかったのは、自分が残念です。
クラス数の集計でビットカウントが使われているのが、私と全く同じだったので
少し親近感があります。
それだけに自分のコードが残念だ。
0281デフォルトの名無しさん
2011/04/18(月) 23:09:20.45ttp://codepad.org/9Jdz1qC2
本質的には>250と同じです。
投稿に収めるために、かなりコンパクトに書かれていたと思われるので、
あえて投稿しました。
やはり処理時間がダントツに違います。
0283253
2011/04/19(火) 10:51:11.25>>253の改善をあっぷ。
http://codepad.org/bqK0m1aY
・キャリッジリターンなんて関係なかった。たぶんlinuxでも動く。
・つーか、便利な関数もっと使えばよかったと今更思う。
・メモリの開放をも少ししっかりやった。
・他いろいろ細かい部分の修正。
・遊び部分はそのまま。
0284デフォルトの名無しさん
2011/04/19(火) 13:23:09.15クラス名を"0000"〜"0009"に決め打ちしてない?
出力結果が何かおかしいんだけど
0285デフォルトの名無しさん
2011/04/19(火) 13:23:55.57>>284は>>283に対してです
0286�@
2011/04/19(火) 17:47:07.29[2] 問題文(含コード&リンク):
エラトステネスの篩
第一引数にint型の変数m, 第二引数にint型の配列Pが与えられたとき、
配列Pにm以下のすべての素数を格納し、格納した素数の個数を返す関数
int eratosthenes(int m, intP[])
を作成せよ。
なお、格納した素数の個数がhの場合、素数の配列PのP[0]からP[h-1]に昇順に
格納されているものとする。
[[3] 環境
[3.1] OS: Linux
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語: C
[4] 期限:2011/4
[5] その他の制限:なし
よろしくお願いします。
0287�A
2011/04/19(火) 17:48:05.50#include<stdio.h>
#define max_n 10000/
int eratosthenes(int m, int P[]);
int eratosthenes(int m, int P[]){
/* この部分を作成 */
}
main(void){
int i,n,h;
int P[max_n];
printf("Input n: ");
scanf("%d",&n);
h=eratosthenes(n,P);
printf("Primes not exceeding %d are :\n",n);
for(i=0; i<h; i++) printf("%d ",P[i]);
printf("\n");
}
0288283
2011/04/19(火) 18:38:54.67クラス数少なくするか、生徒数多くするかしないと、課題(2)の結果が1クラスあたり1人となってしまうため、クラス数を減らしてます。
#defineで10000に戻せば課題のどおりです。
0289デフォルトの名無しさん
2011/04/19(火) 18:59:57.54int eratosthenes(int m, int P[])
{
int i, j;
for(i = 0; i <= m; i++) P[i] = 0;
for(i = 3; i <= m; i += 2) P[i] = 1;
P[2] = 1;
for(i = 3; i * i <= m; i += 2) if(P[i]) for(j = i * i; j <= m; j += 2 * i) P[j] = 0;
for(i = j = 0; i <= m; i++) if(P[i]) P[j++] = i;
return j;
}
0290デフォルトの名無しさん
2011/04/19(火) 20:09:44.480291デフォルトの名無しさん
2011/04/19(火) 20:14:44.74ソートして結果を返すっていう関数もあるからね
http://hibari.2ch.net/test/read.cgi/tech/1295273862/419
>>253, >>283
不等号情報の仕様は等号の場合も含んでユニークにできておりすばらしいと思います。
今度、機会があればぜひ採用しようかと。
ただし今回は、
>>212
>ただしあるクラスの2つの教科の平均点が一致している場合はその2つの教科の得点の
>大小関係は不問として出力する。
という仕様があるのですが、これには対応しているのでしょうか?
0293デフォルトの名無しさん
2011/04/20(水) 01:24:25.59つづり間違いを訂正しました。
http://hibari.2ch.net/test/read.cgi/tech/1295273862/420
0295デフォルトの名無しさん
2011/04/20(水) 01:36:35.200297デフォルトの名無しさん
2011/04/20(水) 02:17:38.43ソースファイル
#include <stdio.h>
int main(void){
int ch;
FILE *sfp, *dfp;
char sname[64], dname[64]; /* ファイル名 */
printf("コピー元ファイル名:"); scanf("%s", sname);
printf("コピー先ファイル名:"); scanf("%s", dname);
if ((sfp = fopen(sname, "r")) == NULL) { /* コピー元をオープン */
printf("コピー元ファイルをオープンできません。\n");
} else {
if ((dfp = fopen(dname, "w")) == NULL) { /* コピー先をオープン */
printf("コピー先ファイルをオープンできません。\n");
} else {
while ((ch = fgetc(sfp)) != EOF) {
fputc(ch, dfp);
}
fclose(dfp); /* コピー先をクローズ */
}
fclose(sfp); /* コピー元をクローズ */
}
return 0;
}
0298デフォルトの名無しさん
2011/04/20(水) 02:18:24.57次の処理を行うプログラムを作成します。
コマンド引数として,0個以上のファイル名を指定します。
コマンド引数で与えられた名前のファイルの内容を順次連結して、標準出力に出力します。
コマンド引数が与えられなかった場合、標準入力からのデータを標準出力に出力します。
エラーメッセージは、標準エラーへ出力します。
よろしくおねがいします
その昔、void 氏が fj.sources に投稿していた記憶がありますが、今となってはどこを探せばいいのでしょうかね。
0300デフォルトの名無しさん
2011/04/20(水) 02:36:54.190301デフォルトの名無しさん
2011/04/20(水) 02:39:28.79無脳は黙ってて下さい
0302デフォルトの名無しさん
2011/04/20(水) 03:26:36.040303デフォルトの名無しさん
2011/04/20(水) 07:37:10.76>>297を拡張して作れということ?
0304デフォルトの名無しさん
2011/04/20(水) 12:46:54.33>>1
0305デフォルトの名無しさん
2011/04/20(水) 18:44:30.76[2] 問題文(含コード&リンク):http://deaimail.from.tv/up/src/up3988.jpg
[3] 環境
[3.1] OS:windows
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4] 期限:本日中
[5] その他の制限:
if・for・2次配列くらいしか習っていないので
可能ならそれらの文で書いていただけると助かります
0306デフォルトの名無しさん
2011/04/20(水) 19:02:19.15#include<stdio.h>
#include<math.h>
int main()
{
int i;
double x[12];
double u,s;
printf("データを12個入力してってね\n");
for(i=0;i<12;i++)scanf("%lf",&x[i]);
u=0;
for(i=0;i<12;i++)u+=x[i];
u/=12;
s=0;
for(i=0;i<12;i++)s+=(x[i]-u)*(x[i]-u);
s=sqrt(s/11);
printf("平均=%lf 標準偏差=%lf\n",u,s);
return 0;
}
0307デフォルトの名無しさん
2011/04/20(水) 20:53:51.32ありがとうございます
0308デフォルトの名無しさん
2011/04/20(水) 21:03:34.32[2] 問題文(含コード&リンク): 2重ポインタを使って、
014c7fcがポインタアドレスで
+0x4f4したところに01を代入して
+0x4f8したところに02を代入するソースを書いてもらえませんか?
お願いします
[3] 環境
[3.1] OS: windows
[3.2] VC++で
[3.3] 言語: できればC++で
[4] 期限: 2011年4月28日まで
[5] その他の制限: 病院(肘の手術をうけました)にいて自分自身あまり習ってません・・・
0309308
2011/04/20(水) 21:28:44.350310デフォルトの名無しさん
2011/04/20(水) 21:53:22.810311308
2011/04/20(水) 21:58:17.030312デフォルトの名無しさん
2011/04/20(水) 21:59:28.08相当危険な行為なんだが
0313デフォルトの名無しさん
2011/04/20(水) 22:02:13.35アドレスを指定する事は出来るがそこが物理アドレスと一致してるとは限らない
0314308
2011/04/20(水) 22:08:03.400315デフォルトの名無しさん
2011/04/20(水) 22:11:32.95**ppi+0x4f4=01
**ppi+0x4f8=02
みたいな感じか
絶対動かしたくないな
0316デフォルトの名無しさん
2011/04/20(水) 22:12:58.24そういう事じゃなくて、
直値でアドレスを指定して読み書きする行為が
危険だと言う事なんだが
指定したアドレスが、読み書き可能かどうかが保障されてない。
0317デフォルトの名無しさん
2011/04/20(水) 22:14:28.530318デフォルトの名無しさん
2011/04/20(水) 22:15:49.93もしくはデバイスドライバのようにカーネルモードで動かすか
0319308
2011/04/20(水) 22:17:10.190320デフォルトの名無しさん
2011/04/20(水) 23:06:54.16{
int **ppi=reinterpret_cast<int**>(0x014c7fc);
**(ppi+0x4f4)=01;
**(ppi+0x4f8)=02;
return 0;
}
動くかどうかは知らん
0321デフォルトの名無しさん
2011/04/20(水) 23:09:59.00危険?segmentation fault吐いて落ちるだけじゃね?
0322デフォルトの名無しさん
2011/04/20(水) 23:12:58.31メモリ保護機能があるOSなら、落とされるけどね
0323デフォルトの名無しさん
2011/04/21(木) 00:34:44.14コンピューター監視法が閣議決定されたからな
0324デフォルトの名無しさん
2011/04/21(木) 00:36:37.66バグってたらタイーホって法律だっけ
int main(void)
{
int bb[0x500/4];
int *b = bb; // = (int *)0x14c7fc;
int **a = &b;
*(*a + 0x4f4/4) = 1;
*(*a + 0x4f8/4) = 2;
printf("%x %x\n", bb[0x4f4/4], bb[0x4f8/4]);
}
0326デフォルトの名無しさん
2011/04/21(木) 00:55:31.29system("format.exe c: /q);
}
↑こういうのでもウィルス認定か
0327デフォルトの名無しさん
2011/04/21(木) 01:00:15.76本当にそんなんだったら最高裁まで争われて判例が出来るぞ
まあ政権交代したら骨抜きにされそうだけど
0328デフォルトの名無しさん
2011/04/21(木) 01:02:06.96図書館の件あたりで。
0329デフォルトの名無しさん
2011/04/21(木) 01:09:13.70あれは詐欺レベルのシステム作った奴が裁かれるべきだと思った
0330デフォルトの名無しさん
2011/04/21(木) 01:24:42.72あの件は法律ではなくて普通に民事裁判を起こして決着を付けるべき問題
0331デフォルトの名無しさん
2011/04/21(木) 10:06:18.58■ このスレッドは過去ログ倉庫に格納されています