C言語なら俺に聞け(入門編)Part 107
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2012/09/09(日) 11:08:29.85★前スレ
C言語なら俺に聞け(入門編)Part 106
http://toro.2ch.net/test/read.cgi/tech/1345810057/
★過去スレ
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++の宿題片付けます 159代目
http://toro.2ch.net/test/read.cgi/tech/1342966104/
★C++言語については避けてください。C++対応明記スレへどうぞ。
★分からない事をなるべく詳しく書いて下さい。
★ソースコードを晒すと答えやすくなるかもしれません。
# 抜粋/整形厳禁、コンパイラに渡したソースをそのまま貼ること。
# サイズが大きい場合はアップローダ等を利用してください。
http://codepad.org/
http://ideone.com/
★開発環境や動作環境も晒すと答えが早いかもしれません。
★質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。
★◆QZaw55cn4cは発言禁止です。トリップを隠してもダメです。
0002デフォルトの名無しさん
2012/09/09(日) 11:23:25.190003デフォルトの名無しさん
2012/09/09(日) 11:28:27.92できるなら具体的にどうなりますか
ちょっと言葉たらずだ。もう少し説明してほしい。
http://codepad.org/25UgJSqt
0005デフォルトの名無しさん
2012/09/09(日) 11:50:54.52見てみます
早いレス感謝です
0006デフォルトの名無しさん
2012/09/09(日) 12:01:28.580007 ◆5bhYRM1Rdk
2012/09/09(日) 21:02:10.06問題文:ヒープの最小値を取り除く、deletemin関数を作成せよ。
空の配列にinsertを複数実行することでヒープ条件を満たすヒープを構成する。
これにdeleteminを実行することで最小値を抽出せよ。
最小値を抽出した後、一次元配列がヒープ条件を満たすように再構成せねばならない。プロトタイプ宣言は以下とする。
int deletemin(int a[], int *n);
質問:関数deleteminについて調べてはみたんですが何をしているのか分からないものばかりだったので質問させてください。
ヒープの最後のノードを根に持ってきて、右のノードと左のノードを比べて小さい値のノードの方と比較して
最後から持ってきたノードの値の方が大きければ交換するというの
繰り返して最小ヒープを再構成したいのですが、どうすればいいのかわかりません。
サイトなどみても分からなかったのでど素人でも分かるように説明お願いします。
自分のソースhttp://ideone.com/vvLM6
0008デフォルトの名無しさん
2012/09/09(日) 21:48:46.54元々宿題っぽいから、スレチだし。
0009デフォルトの名無しさん
2012/09/09(日) 22:05:26.600010デフォルトの名無しさん
2012/09/09(日) 23:02:27.37http://toro.2ch.net/test/read.cgi/tech/1342966104/
0011 ◆5bhYRM1Rdk
2012/09/10(月) 01:03:07.35あちらは問題を丸投げするスレですが、こっちのスレはC言語ならなんでも聞いていい
わけですよね。だから最後に説明をといってるんですが。
書いたコードなんですが、コンパイルは通るのですが出力されません。
ソース
http://ideone.com/ckedm
0012デフォルトの名無しさん
2012/09/10(月) 01:31:10.990013デフォルトの名無しさん
2012/09/10(月) 01:45:19.08どこに原因が有るのか?
int i,j,k,temp;
int *num;
/*numの値の取得と幾つかの処理*/
num[k] ^= num[i];
num[i] ^= num[k];
num[k] ^= num[i];
この部分が
temp=num[k];
num[k]=num[i];
num[i]=temp;
だと普通に動く。
環境は
OS:Linux
コンパイラ:gcc 4.7
http://codepad.org/sHOK8T4N
http://codepad.org/VQPVy7G6
しかし
http://codepad.org/ecUnim6Z
k == i のときにうまくいっていないんじゃない?
0015デフォルトの名無しさん
2012/09/10(月) 02:08:33.19k == i になる可能性を考えていなかった。
if(num[k]^num[i])
{
num[i]^=num[k];
num[k]^=num[i];
num[i]^=num[k];
}
こうしたら上手いこと動いた。
0016デフォルトの名無しさん
2012/09/10(月) 02:29:30.82自前で\nを0x0aなどに置換しないとダメなのでしょうか?
--formatText.txt--
\\t[\t]\\t[\t]%%d[%d]\\n\n(ここでEOF)
--main.c--
#include <stdio.h>
int main()
{
FILE *fp;
char szBuf[256];
if(NULL == (fp = fopen("formatText.txt", "r")) ){
printf("open error\n");
return -1;
}
printf("希望");
strcpy(szBuf, "\\t[\t]\\t[\t]%%d[%d]\\n\n");
printf("<<<");
printf(szBuf, 999);
printf(">>>\n");
printf("現実");
fgets(szBuf, 256, fp);
printf("<<<");
printf(szBuf, 999);
printf(">>>\n");
return 0;
}
--実行結果--
希望<<<\t[ ]\t[ ]%d[999]\n
>>>
現実<<<\\t[\t]\\t[\t]%d[999]\\n\n>>>
0017デフォルトの名無しさん
2012/09/10(月) 02:30:04.48http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1393771603
どなたか教えてください。
printf() の実行時にはあくまでも書式指定のうち % がからむものしか解釈しない。
\nとか\\ とかは、コンパイル時に解釈されるものだ。
自前で置換するしかないでしょうね。それか、自前で \x を展開するルーチンを書くか。
0019デフォルトの名無しさん
2012/09/10(月) 03:13:02.52printfのメッセージと引数は蜜結合しているので、分離することは良くない。
クラッシュするプログラムが簡単に出来あがるので、設計をやりなおすべき。
Qzとかいうクズのいう事は信用しないように。
×蜜結合
○密結合
まあそれもそうだ。設定ファイルがまずいと警告なしにクラッシュするのはよくないね、確かに。
0021デフォルトの名無しさん
2012/09/10(月) 07:27:07.82ありがとうございます。
コンパイル時に書式解釈されるということで、実行時解釈は規定外ということ納得しました。
PGしながら、オーバーフロー実行狙いの言語ファイルを作られそうだなとは思っていました。
(対策は思いつかなかったので善意に期待して放置でしたが…)
今回はコンソールアプリを作成したので公開しようと思い、どうせなら英語化も簡単に出来る仕組みにしようかな、というのが目的でした。
内部に2種の文字を持ち、実行後にus/jpのコマンドで切り替えるなどに路線変更を検討してみます。
0022SCHEME餃子 ◆8X2XSCHEME
2012/09/10(月) 07:35:34.08Windows ならリソースを切り替える仕組があるし、GNU の gettext という手もある。
ごく簡単なものならプログラム内で場合分けしてもいいと思うけど、
その場合でも既存のものがどういう方式になっているのかを参考にするのは悪くない。
0023デフォルトの名無しさん
2012/09/10(月) 07:40:42.617-zipの場合、たしかlangフォルダの下に言語ファイルが置いてあったな。
それがどのように動いているかは分からない。
0024デフォルトの名無しさん
2012/09/10(月) 10:29:39.14一応できましたが、何故かstrlenで、*aにヌル文字が何故か代入されています
*(a+1)以降はそんな事が起こらず、何故aにヌル文字が代入されてしまうのでしょうか?
またこの二つの関数はこれで大丈夫でしょうか?
#include<stdio.h>
int main(void){
char a[16]="abcdefh";
char *b="ijk";
int c=0;
char d=0;
while(*a!='\0'){
printf("%c\n",*a);
c++;
*a=*(a+c);
}
printf("文字列の長さは%d\n",c);
*a='a';
while(1){
*(a+c)=*(b+d);
c++;
d++;
if(*(b+d)=='\0'){
break;}
}
printf("%s\n",a);
return 0;}
>何故aにヌル文字が代入されてしまうのでしょうか?
c++;
*a=*(a+c);
この2行、特に後ろのほうのせいだが、何をさせたかったの?
0026デフォルトの名無しさん
2012/09/10(月) 12:20:19.59http://ideone.com/1zKVB
なんでstrlenのほうは、文字列の先頭を書きなおしたりしてるの?
strcatも無駄に分岐が多い
http://ideone.com/qXeTP
0027デフォルトの名無しさん
2012/09/10(月) 14:52:03.43アドバイスどおりに短く書き直して、関数化してみました
26さんのソース見ているとfor文の中で全部してしまうことすらできるんですね
単純にループさせるための条件を書くためだけかと思ってました
int strlen_func(char*a){
int c=0;
while(*(a+c)!='\0'){
c++;}
printf("文字列の長さは%d\n",c);
return c;
}
void strcat_func(char*a,char*b,int c){
int d=0;
while(*(b+d)!='\0'){
*(a+c)=*(b+d);
c++,d++;
}
printf("%s\n",a);
}
0028デフォルトの名無しさん
2012/09/10(月) 19:07:06.950029デフォルトの名無しさん
2012/09/10(月) 19:18:54.60一般的な関数を作るときは、strlen後の復帰値をstrcatに使用するような流れ限定な引数(strcatの[int c])は無いほうが良いです。
無駄なようでもstrcatの引数は文字列2個だけにして、strcatの中でstrlenを使って文字列終端を取得させる方がきれいです。
あとstrcatのバグですが、文字列bの結合で'\0'が出たら終わるため'\0'の代入がされていません。
文字列aの初期化状態によっては終わりの無い文字列が表示されます。
例えば以下の状態だと出力結果は"abcdefghxxxxxxxx"となります。これはすぐに終端がある、まだマシな例です。
int main(){
char sz1[32];
char sz2[32];
int len;
strcpy(sz1, "xxxxxxxxxxxxxxxx");
strcpy(sz1, "abcde");
strcpy(sz2, "fgh");
len = strlen_func(sz1);
strcat_func(sz1, sz2, len);
return 0;
}
003016
2012/09/10(月) 20:12:39.18「既存のものがどういう方式」というのを調べられるレベルに無いので、
リソースやgettext、オープンソースなど具体例を示して頂けたので勉強になりました。
今回は小規模アプリなので、単体に2種文字持ちで実行時任意切り替えが妥当なようです。
ありがとうございました。
0031デフォルトの名無しさん
2012/09/10(月) 20:29:31.66一応理系の企業に就職したいです。(※プログラミングは出来ない.....)
0032デフォルトの名無しさん
2012/09/10(月) 20:38:07.610033デフォルトの名無しさん
2012/09/10(月) 20:42:00.70ティッシュ配りも無理ですかね?
面接落とされまくってて落ち込んでます。
0034デフォルトの名無しさん
2012/09/10(月) 20:54:01.22君に数十万の月給を払いたいと思うかね
そんな価値は無い
0035デフォルトの名無しさん
2012/09/10(月) 21:07:52.17価値の無い人間のほうが多いと思いますが?
0036デフォルトの名無しさん
2012/09/10(月) 21:12:55.14君には価値が無い
0037デフォルトの名無しさん
2012/09/10(月) 21:34:48.37じゃぁ努力したい。
どうすればいい?マジレス希望。
欝じゃないけど気弱なんで。
0038デフォルトの名無しさん
2012/09/10(月) 21:37:20.840039デフォルトの名無しさん
2012/09/10(月) 21:40:34.53起業しなさい
0040デフォルトの名無しさん
2012/09/10(月) 21:41:49.710041デフォルトの名無しさん
2012/09/10(月) 21:55:10.650042デフォルトの名無しさん
2012/09/10(月) 22:03:56.80ヒントくれ。
会社設立は資本金1円からでも始められる事は知ってる。
プログラミング言語を売るってのは良いの?
外国でしか使われてないプログラミング言語を日本でしか
流通させないことを条件に権利を貰うみたいな。
でそれを企業に提供するみたいな。
0043デフォルトの名無しさん
2012/09/10(月) 22:09:07.71アフィリエイト成功率より低い
0044デフォルトの名無しさん
2012/09/10(月) 22:10:32.790045デフォルトの名無しさん
2012/09/10(月) 22:19:11.73ついでにGUI構築環境とかも有料
基本的なコンパイラ&インタプリタは無料
0046デフォルトの名無しさん
2012/09/10(月) 22:30:14.81でもあれって出版の利権とかコネでもあるの?
当たり前の事しか書いてないクソみたいな本が棚に並んでたりするし
しかも著者女だったりするしwwww
0047デフォルトの名無しさん
2012/09/10(月) 22:31:34.600048デフォルトの名無しさん
2012/09/10(月) 22:34:06.39でもC言語教えてるパソコン教室なんて無いし隙間かもね
0049デフォルトの名無しさん
2012/09/10(月) 22:35:55.00QZじゃあるまいし
0050デフォルトの名無しさん
2012/09/10(月) 22:41:07.171000行超えると書けないから挫折
書いたこと忘れる
0051デフォルトの名無しさん
2012/09/10(月) 22:45:46.300052デフォルトの名無しさん
2012/09/10(月) 22:49:45.42ポインタを使って配列をコピーするにはどうしたらいいですか?
0053デフォルトの名無しさん
2012/09/10(月) 22:50:39.63memmove
0055デフォルトの名無しさん
2012/09/10(月) 22:51:36.64しっかり利益を上げることができる見通しを提示できるのなら就職も不可能ではないよ。
0056デフォルトの名無しさん
2012/09/10(月) 22:52:41.46関数一個。だから、関数は100行程度に抑えるべき。
0057デフォルトの名無しさん
2012/09/10(月) 22:53:07.72005846
2012/09/10(月) 22:55:57.970059デフォルトの名無しさん
2012/09/10(月) 22:58:40.28006046
2012/09/10(月) 22:59:58.61配列って静的なメモリの確保だから
0061デフォルトの名無しさん
2012/09/10(月) 23:03:07.820062デフォルトの名無しさん
2012/09/10(月) 23:07:40.600063デフォルトの名無しさん
2012/09/10(月) 23:08:39.170064デフォルトの名無しさん
2012/09/10(月) 23:09:09.600065デフォルトの名無しさん
2012/09/10(月) 23:09:37.35モグリか?
0066デフォルトの名無しさん
2012/09/10(月) 23:09:43.49006746
2012/09/10(月) 23:10:16.60strcpyを使うと面倒だ
配列は配列にコピーすれば良い
0068デフォルトの名無しさん
2012/09/10(月) 23:11:54.62たとえば、Javaなら
a = b;
でコピーできる
006946
2012/09/10(月) 23:17:13.53char *s="abcd"
char *t="efgh"って
あって
strcpy(s,t)とする意味は全く無い。
エラーでやすいしばかげてる。
k=s;
s=t;
t=k;
としたら指す実態は入れ替わっている。
0070デフォルトの名無しさん
2012/09/10(月) 23:17:24.460071デフォルトの名無しさん
2012/09/10(月) 23:18:19.76> そもそも配列はコピーできない
> 配列は配列にコピーすれば良い
コピーできるのかできないのかどっちだよ。ばーーーーーーーーーーーーーーーか。
0072デフォルトの名無しさん
2012/09/10(月) 23:20:52.25だから(インデクスでアドレスを計算できるから)、一発でアクセスできる。
0073デフォルトの名無しさん
2012/09/10(月) 23:22:30.14一個ずつコピーしてもできるけど、
memcpy()でコピーするのは、配列の特徴をいかしている。
0074デフォルトの名無しさん
2012/09/10(月) 23:26:29.460075デフォルトの名無しさん
2012/09/10(月) 23:42:41.900076デフォルトの名無しさん
2012/09/10(月) 23:43:49.330077デフォルトの名無しさん
2012/09/10(月) 23:47:28.64配列っぽくできるよね。
char *s
s[0] s[1]
0078デフォルトの名無しさん
2012/09/10(月) 23:48:35.710079デフォルトの名無しさん
2012/09/10(月) 23:51:07.030080デフォルトの名無しさん
2012/09/10(月) 23:52:38.240081デフォルトの名無しさん
2012/09/11(火) 00:04:05.77shine78()
{
int *a;
int b[20];
a += 10;
b += 10;
}
cc 78.c
78.c: In function 'shine78':
78.c:6: error: invalid operands to binary +
んー、違うような気がします。Java で配列コピーする完結したコード例を示してみては?
0083デフォルトの名無しさん
2012/09/11(火) 00:20:31.040084デフォルトの名無しさん
2012/09/11(火) 00:42:04.330085デフォルトの名無しさん
2012/09/11(火) 00:44:06.93やってることはCの
int a[] = {1, 2, 3};
int *b = a;
と似たようなもんだ
0086デフォルトの名無しさん
2012/09/11(火) 00:45:32.790087デフォルトの名無しさん
2012/09/11(火) 00:50:54.65そういうのあるけど、コピーということばは適切ではない(コピーしてない)
0088デフォルトの名無しさん
2012/09/11(火) 01:22:32.510089デフォルトの名無しさん
2012/09/11(火) 01:26:30.47知ったかぶり乙
0090デフォルトの名無しさん
2012/09/11(火) 01:34:34.86#include <stdio.h>
#include <string.h>
void go_off(char *p)
{
char b[STRING_SIZE] = "go off";
memcpy(p, b, sizeof(b) );
}
int main(void)
{
char a[STRING_SIZE];
go_off(a);
printf("%s (%d bytes)\n", a, strlen(a) );
return 0;
}
0091デフォルトの名無しさん
2012/09/11(火) 01:53:24.580092デフォルトの名無しさん
2012/09/11(火) 10:05:43.59JavaだってコピーするならSystem.arraycopy()だからたいして変わらんよ
0093デフォルトの名無しさん
2012/09/11(火) 12:32:52.610094デフォルトの名無しさん
2012/09/11(火) 12:57:25.150095デフォルトの名無しさん
2012/09/11(火) 13:11:33.67はぁ?ww
0096デフォルトの名無しさん
2012/09/11(火) 13:21:30.91質問するときはfork(2)とセクションまで書くといいよ
0097デフォルトの名無しさん
2012/09/11(火) 13:45:49.140098デフォルトの名無しさん
2012/09/11(火) 13:47:42.120099デフォルトの名無しさん
2012/09/11(火) 15:11:25.600100デフォルトの名無しさん
2012/09/11(火) 18:00:48.780101デフォルトの名無しさん
2012/09/11(火) 18:13:43.87C言語でアドレスの話するときメモリメモリってなるけど
0102デフォルトの名無しさん
2012/09/11(火) 18:33:50.11それとも実機が置かれている工場みたいな倉で作業?
0103デフォルトの名無しさん
2012/09/11(火) 18:33:51.74調べろよks
それもできない低脳なら
回線切って小学校からやりなおせ
レジスタはCPUの中にあり、メモリはCPUの外に存在する、と考えるのが普通
0105デフォルトの名無しさん
2012/09/11(火) 18:38:40.770106デフォルトの名無しさん
2012/09/11(火) 18:39:03.070107デフォルトの名無しさん
2012/09/11(火) 18:40:32.220108デフォルトの名無しさん
2012/09/11(火) 18:43:00.48チューリング機械の無限に長い一本のテープを考えればOK?
0109デフォルトの名無しさん
2012/09/11(火) 18:46:54.47東大だから賢い人ばっか集まってると思うのに
正解者0の問題とかある
アルゴリズムとC言語はお互い違った能力なわけ?
0110デフォルトの名無しさん
2012/09/11(火) 18:51:53.030111デフォルトの名無しさん
2012/09/11(火) 18:57:09.200112デフォルトの名無しさん
2012/09/11(火) 18:57:47.650113デフォルトの名無しさん
2012/09/11(火) 19:03:33.75仮数関数機能すらない
0114デフォルトの名無しさん
2012/09/11(火) 19:13:44.060115デフォルトの名無しさん
2012/09/11(火) 19:22:57.08そこでのまさに仮数関数機能そのものは
C言語で作られていたりする
その辺りはどう思う
0116デフォルトの名無しさん
2012/09/11(火) 19:23:39.56基礎が大事なんてうそやったんや!
0117デフォルトの名無しさん
2012/09/11(火) 19:28:17.28プログラム名に添え字付けるだけじゃだめ?
sample.c
void sample1(void)
char sample2(int a, int b)
*int sample3(a[3])
ライクな感じ
0118デフォルトの名無しさん
2012/09/11(火) 19:35:01.13純粋仮想関数すらないってプロトタイプにも程がある。
もっと凝れよな。
0119デフォルトの名無しさん
2012/09/11(火) 19:36:28.300120デフォルトの名無しさん
2012/09/11(火) 19:37:16.41関数なんて概念誰でも思いつくだろ
0121デフォルトの名無しさん
2012/09/11(火) 19:41:00.170122デフォルトの名無しさん
2012/09/11(火) 19:46:37.970123デフォルトの名無しさん
2012/09/11(火) 19:52:26.32この臭いスレですか?
0124デフォルトの名無しさん
2012/09/11(火) 19:57:11.10昨日システム管理・監査に関わるプログラミングのバイトに受かったんですが
明日から来てくれといわれました。
仕事内容は現場で当日から教わるそうです。
0125デフォルトの名無しさん
2012/09/11(火) 19:58:52.58ってコメント書いとけばおk
0126デフォルトの名無しさん
2012/09/11(火) 20:02:49.72>>125が書き散らした「/* TODO: とりあえず放置 */」
の部分を埋める作業だなwww
/* TODO: やっぱり放置 */
で全て完了だwww
金銭的支払いも放置されるからな、
気をつけろよwww
0127デフォルトの名無しさん
2012/09/11(火) 20:03:12.94もしそのコメントを書き忘れるもしくわ
プライドが許さない場合はどうすれば良いですか
0128デフォルトの名無しさん
2012/09/11(火) 20:07:27.55報告、連絡、相談、自殺
0129デフォルトの名無しさん
2012/09/11(火) 20:08:35.33VIPでやれ
消えろクソ野郎
0130デフォルトの名無しさん
2012/09/11(火) 20:33:09.39労働基準法に反するだろ給料無しは
0131デフォルトの名無しさん
2012/09/11(火) 20:38:09.850132デフォルトの名無しさん
2012/09/11(火) 21:01:27.57我々はいつもあなたのような迷える子羊たちのために
いつでも救いの手を差し伸べるでしょう
さあC言語という名前の宗教に今こそ入信すべき時です
門戸は誰にでも開かれております
0133デフォルトの名無しさん
2012/09/12(水) 01:41:46.51出来ない奴は徹夜しようが何しようが出来ないんだから、発注側の苦労が増えるだけ
0134デフォルトの名無しさん
2012/09/12(水) 06:56:46.81kwsk
0135デフォルトの名無しさん
2012/09/12(水) 06:57:47.11「旧プロジェクトのソースを参考につけます」と言いつつ、
「詳細の仕様はないので旧プロジェクトを(バグも含めて)踏襲してください」って話になって、
「動かないようでは困ります」ってもう、いい加減にしろとしか。
0136デフォルトの名無しさん
2012/09/12(水) 07:17:52.700137デフォルトの名無しさん
2012/09/12(水) 07:21:37.060138デフォルトの名無しさん
2012/09/12(水) 08:51:03.78資格の本見たけどプログラムコードみたいなのはほとんどなくて
リスク管理とかマネージメントとかプロジェクト規模の話ばかりだった。
すげーとおもたわ。
0139デフォルトの名無しさん
2012/09/12(水) 08:55:40.920140デフォルトの名無しさん
2012/09/12(水) 09:35:30.02よみだすファイル自体をもコンパイルする事って可能ですか?
それともバイナリデータを格納した変数をしようするしかないですか?
0141デフォルトの名無しさん
2012/09/12(水) 09:42:27.93できるよ
C言語コンパイラを組み込むよりは lua みたいな組み込み用言語を使ったほうが楽
0142デフォルトの名無しさん
2012/09/12(水) 12:28:22.030144デフォルトの名無しさん
2012/09/12(水) 12:45:26.52以下のような構造のデータをfwrite一発で全書き出ししたいんですがどうしたらいいでしょうか
typedef struct
{
int val;
char* text;
}DATA;
DATA data[100] =
{
{ ... },
{ ... },
(データが100個ある)
};
textデータのサイズは可変でポインタでなく中の実データをファイル出力したいんですが、
fwrite一発でやるにはどうしたらいいでしょうか
0145デフォルトの名無しさん
2012/09/12(水) 12:46:50.85一発じゃ絶対無理
0146デフォルトの名無しさん
2012/09/12(水) 12:51:29.46UC* save_data;
とかに保存し直した後で
fwriteとかしかないすかね
0147デフォルトの名無しさん
2012/09/12(水) 12:53:00.73fwrite の代わりに fputc で書けば fwrite の回数は 0 回でいけるが、ぐっと低速化するw
0148デフォルトの名無しさん
2012/09/12(水) 12:53:44.880149デフォルトの名無しさん
2012/09/12(水) 12:57:00.55text の内容量が少ない → 一発のが早い
0150デフォルトの名無しさん
2012/09/12(水) 13:32:34.18書き出すデータ量<バッファサイズ
ならfwrite()の回数は何回でも関係ないな。fflush()またはfclose()時に書かれるから。
書き出すデータ量>>バッファサイズ
の場合もfwrite()の回数はどうでもいいな。書き出す処理自体がボトルネックになるから。
0151デフォルトの名無しさん
2012/09/12(水) 14:58:43.740152デフォルトの名無しさん
2012/09/12(水) 15:18:54.730153デフォルトの名無しさん
2012/09/12(水) 20:19:15.84うん
0155SCHEME餃子 ◆8X2XSCHEME
2012/09/12(水) 20:42:03.29今時の複雑なシステムを把握しようとするだけ無駄。
その昔 smartdrv.exe の存在だけでもえらい違いというか fd, fp の差はなかったかと。
それはそうと、ついにossの smartdrv は現れなかったですね。いったいどういう実装だったのだろう‥‥
0157デフォルトの名無しさん
2012/09/12(水) 22:18:03.250158デフォルトの名無しさん
2012/09/12(水) 23:45:26.640159デフォルトの名無しさん
2012/09/12(水) 23:46:51.760160デフォルトの名無しさん
2012/09/12(水) 23:51:12.890161デフォルトの名無しさん
2012/09/13(木) 00:57:33.50例えばintの配列32個として
int a[]
int *a
int a[32]
(int *a)[32]
。。。他にも書き方あるかな?
0162デフォルトの名無しさん
2012/09/13(木) 01:01:13.830163デフォルトの名無しさん
2012/09/13(木) 01:11:44.470164デフォルトの名無しさん
2012/09/13(木) 01:29:14.610165デフォルトの名無しさん
2012/09/13(木) 01:54:09.370166デフォルトの名無しさん
2012/09/13(木) 08:12:05.75C言語坂を登りはじめたばかり
K&R2 の線形リスト書き方は初心者用でいつまでもそれでは糞ですよ、と
0168デフォルトの名無しさん
2012/09/13(木) 08:35:45.870169デフォルトの名無しさん
2012/09/13(木) 15:14:26.970170デフォルトの名無しさん
2012/09/13(木) 15:17:29.660171デフォルトの名無しさん
2012/09/13(木) 15:18:18.25・俺は絶対にSEにはなれない
・SEをやっている奴は脳の構造が天才である
・これに比べたらHTMLとCSSは糞みたいに簡単である
・単純につまらない
・用途が無い
・ホモ臭い
・女性はやらない
・空き缶拾いのほうがコスパ良い
0172デフォルトの名無しさん
2012/09/13(木) 15:32:14.99/* 引数void, 戻り値void の関数を指せるポインター */
typedef void (*fncptr)(void);
void a(void) { printf("A"); }
void b(void) { printf("B"); }
void c(void) { printf("C"); }
/* fncptr 型の関数が3個並んだ配列が引数の関数 */
void f (fncptr f[3])
{
f[0]();
f[1]();
f[2]();
}
main()
{
/* 関数の配列を作成 */
fncptr v[3] = {a, b, c};
f(v);
}
0173デフォルトの名無しさん
2012/09/13(木) 15:40:43.53> C言語プログラミングを大学で1年やって分かった3つの事
8つもある件についてkwsk
元スレ
http://hayabusa.2ch.net/test/read.cgi/news4vip/1347459825/
0174デフォルトの名無しさん
2012/09/13(木) 16:26:18.35ホモ臭いって何だよ┌(┌ ^o^)┐ホモォ・・・
0175デフォルトの名無しさん
2012/09/13(木) 17:00:57.970176デフォルトの名無しさん
2012/09/13(木) 19:07:43.550177デフォルトの名無しさん
2012/09/14(金) 19:48:08.81http://www.youtube.com/watch?v=Q4gTV4r0zRs&feature=relmfu
巷で噂の動画。
コンピュータでの計算方法。
0178デフォルトの名無しさん
2012/09/14(金) 19:52:56.31ないからクソなのか
作れるから素晴らしいのかを考えよう。
カリカリにチューンして組み上げるのがC
出来合いの既製品でプラモデルするのがお前の好み
F1カーと軽自動車の違い。
0179デフォルトの名無しさん
2012/09/14(金) 19:57:30.410180デフォルトの名無しさん
2012/09/14(金) 20:08:34.200181デフォルトの名無しさん
2012/09/14(金) 20:19:26.30これ最初見たとき火の鳥を思い出した。
0182デフォルトの名無しさん
2012/09/14(金) 20:39:31.24お姉さん方式でやってみた
http://codepad.org/FR2MoYGA
5x5 0.148 sec
6x6 77.807 sec
7x7 未計測 多分30時間くらいかかる
0183デフォルトの名無しさん
2012/09/14(金) 20:47:51.73――そして、25万年後……
0184デフォルトの名無しさん
2012/09/14(金) 20:52:18.50三歩目でスレッド分割するなら5つ
に分けられるけど
7x7 を4時間で解くのは無理ぽ
0185デフォルトの名無しさん
2012/09/14(金) 21:24:16.208x8 を4時間で解かなきゃいかんのか
全然かなわねーな
0186デフォルトの名無しさん
2012/09/14(金) 21:47:53.17@MinGW gcc ver4.6.2 オプション -O2 にて
http://codepad.org/jWKLYVq5
0187186
2012/09/14(金) 22:16:01.89http://codepad.org/k9Dw2VA5
0188163
2012/09/15(土) 02:50:14.22で、結局説明はなし?
0189デフォルトの名無しさん
2012/09/15(土) 09:24:23.23今はこんな感じです(実際は三項演算子を使ったマクロにしてます)
0 除算については考えなくてもOKです
// u が被除数
// l が除数
int div(int u, int l)
{
if(l>0)
{
if(u>=0) return u/l;
return -((-u+l-1)/l);
}
else
{
if(u<=0) return u/l;
return -((u-l-1)/(-l));
}
}
0190デフォルトの名無しさん
2012/09/15(土) 09:46:03.07ぐぐれば、いくらでも出てくるだろ。
そもそも、何から説明すればいいのからわからんし、全部説明しろよ、
とか思ってそうだから無視されてるんだろ。
0191デフォルトの名無しさん
2012/09/15(土) 11:07:48.40何に使うの?
例えば定義域がわかっているならオフセットを足して計算とか、範囲が狭いなら
テーブルで持っておくとか。
0192デフォルトの名無しさん
2012/09/15(土) 12:21:42.22ポリゴンの描画に使います
定義域は不定
範囲も不定
丸め方向が一方向でないとポリンゴンに穴があいてしまうのと
何度も呼ばれて結構な負荷(全体の20%程度)になってるので高速化したいというのが理由です
0193m_m
2012/09/15(土) 12:22:10.47int main(){
int a,b;
a=10,b=10;printf("%d %d %d\n",a,b,b/a);
a=10,b=9;printf("%d %d %d\n",a,b,b/a);
a=10,b=1;printf("%d %d %d\n",a,b,b/a);
a=10,b=0;printf("%d %d %d\n",a,b,b/a);
a=10,b=-1 -9;printf("%d %d %d\n",a,b,b/a);
a=10,b=-9 -9;printf("%d %d %d\n",a,b,b/a);
a=10,b=-10-9;printf("%d %d %d\n",a,b,b/a);
}
/* 答えがマイナスになるようなら、分母の絶対値−1を、分子から引く*/
0194デフォルトの名無しさん
2012/09/15(土) 12:41:40.20return~(~u/l);
else
return u/l;
0195デフォルトの名無しさん
2012/09/15(土) 12:52:31.92ポリゴン描画なら定義域は画面範囲じゃん。
普通、画面座標系(0,0)-(w-1,h-1)でやるんでねーの?
0196m_m
2012/09/15(土) 12:57:31.750197デフォルトの名無しさん
2012/09/15(土) 13:51:43.48計算結果が一致しない
>>195
最終的にはポリゴンの描画なんだけど
行列式の計算途中の数値だから範囲を限定できないんだ
0198デフォルトの名無しさん
2012/09/15(土) 15:04:23.58画面座標に落とすまでは丸めないで計算すると思うんだが。
0199デフォルトの名無しさん
2012/09/15(土) 15:22:50.19次の関数を完成させよ
#define WIDTH 640
#define HEIGHT 480
char buf[HEIGHT][WIDTH];
void triangle(int x1, int y1, int x2, int y2, int x3, int y3, int c)
{
// (x1,y1) (x2,y2) (x3,y3) を頂点とする三角形を描画せよ
// buf[y][x]=c とすることで点を打つことが出来る
// x1,y1,x2,y2,x3,y3 の値域は -32000 〜 32000 である
}
0200デフォルトの名無しさん
2012/09/15(土) 15:33:05.91普通は画面座標におさまるように前段階で計算するもんだが。
ちょっと基本をググるなりした方がいいぞ。
0201デフォルトの名無しさん
2012/09/15(土) 15:42:49.03やり方でできるんじゃねーのか?
0202デフォルトの名無しさん
2012/09/15(土) 15:46:43.990203デフォルトの名無しさん
2012/09/15(土) 15:47:06.360204デフォルトの名無しさん
2012/09/15(土) 15:53:25.37図形はすべて画面外かもしれないし、一部だけ見えてるかもしれないし、全部入ってるかもしれない
0205189
2012/09/15(土) 16:45:14.380206デフォルトの名無しさん
2012/09/15(土) 16:53:50.750207デフォルトの名無しさん
2012/09/15(土) 17:00:49.57だからクリッピングは前段階でやるんだってば...
>>206
そりゃやってんだろ。
0208デフォルトの名無しさん
2012/09/15(土) 17:41:56.360209デフォルトの名無しさん
2012/09/16(日) 09:39:23.71http://cm.bell-labs.com/cm/cs/who/dmr/
だれか魚拓を知らないか?
0210デフォルトの名無しさん
2012/09/16(日) 12:27:38.83↓
石油があると外国が侵略する理由になる
また豊富な石油で電力を賄うと原発への依存度が下がる
↓
原発を減らすと技術力がガクッと下がりさらに国防力も大幅下落する
アメリカやフランスなどとの関係も悪くなり戦争リスクが高まる
結論
尖閣諸島を放棄することは国益
中国に教えてあげて
0212デフォルトの名無しさん
2012/09/16(日) 12:33:53.700213はちみつ餃子 ◆8X2XSCHEME
2012/09/16(日) 13:17:28.94俺も感心したわ。
0214デフォルトの名無しさん
2012/09/16(日) 13:25:13.690215デフォルトの名無しさん
2012/09/16(日) 14:06:38.650216デフォルトの名無しさん
2012/09/16(日) 18:37:09.35if文などの条件文で複数の条件を指定する時、
if ( 変数 == 値 || 変数 == 値 )
と書きますが、この時変数が同じ場合だとしても同じ変数を2度書くしか指定する方法はないのでしょうか?
分かりづらいと思うので、
if ( 変数 == 値1 , 値2 )
こういった感じに変数の複数の値から分岐させたい場合変数を1回の記述で済ます事は出来ないのでしょうか?
私の場合これが極端で
if ( 変数x == 値1 || 変数x == 値2 || 変数x == 値3…(ry
とする場合が多いのでこれらを1つの条件にまとめたいのですが可能ですか?
ダメでも他に良い提案がありますか?
よろしくお願いします
0217デフォルトの名無しさん
2012/09/16(日) 18:39:28.63そんなにオレ様仕様がいいならオレ様言語でも作ったら?
0218デフォルトの名無しさん
2012/09/16(日) 18:56:12.56switch使え。
0219はちみつ餃子 ◆8X2XSCHEME
2012/09/16(日) 18:58:21.99こういった感じで可変長引数の関数で表現出来なくはない。
http://ideone.com/DNNKz
Cの可変長引数は引数の個数を渡す必要があるのが不恰好な上に、
間違った値を指定してもコンパイラが検出できないのがダサい。
C++ ならもうちょっとマシな方法を用意できるんだけど。
0220デフォルトの名無しさん
2012/09/16(日) 19:25:45.73Python なら if(x in [2, 3, 5, 7, 11]) { ... } とか if(10 <= x <= 20){ ... } とかできるから、
C言語でも言語仕様を変更すれば実現可能とは思うが、そんな要望はたいして多くな
いから、素直に書くか >>218-219 みたいにするか、適当なプリプロセッサで作って変
換するとかすればいいと思うよ。
0221デフォルトの名無しさん
2012/09/16(日) 19:26:23.110222デフォルトの名無しさん
2012/09/16(日) 20:39:28.33可変長引数マクロを駆使すれば出来るが、まんどうだからswitchの方がいい。
条件でbreakしたいならswitchじゃダメだけど。
0223デフォルトの名無しさん
2012/09/16(日) 20:46:41.98case 値1:
case 値2:
case 値3:
処理;
break;
}
こういうことか
0224216
2012/09/16(日) 21:13:10.96みなさん早い回答ありがとうございますm(_ _)m
switch文で代用したいと思います。
ありがとうございました!
可変長引数ってのが何なのか分かりませんでした…(´・ω・`)
もうちょっと勉強します…orz
>>221
高レベル=習得が難しいアセンブラとかの事ですか?それとも高水準系ですか?
高レベル、ここではより人間の思考に沿った、書きやすいあるいは読みやすい、あるいは思考・アルゴリズムを反映する言語、ということになるかと思います。
計算機にさせるべき仕事や目的があってのプログラミング言語ですから、必要に応じて習得するなり、多少の時間と手間をかけて C で記述することを選択するなりいろいろ選択はあると思います。
ただ、C をある程度において習得することは、今後、別の言語を学ぶ際にも役立つでしょうね。
>>225
>計算機にさせるべき仕事や目的があってのプログラミング言語
お前がいうか?
0226デフォルトの名無しさん
2012/09/16(日) 22:19:55.450227デフォルトの名無しさん
2012/09/16(日) 23:51:34.750228デフォルトの名無しさん
2012/09/17(月) 02:15:19.56http://woman.infoseek.co.jp/news/entertainment/cyzowoman_16Sep2012_25106
日韓の関係悪化の影響により、韓流離れが加速する現在のテレビ業界。
しかし、2年ほど前には広告代理店を中心に「ゴールデンタイムの番組には韓国人タレントを使用する」流れが作られていたという。
現在は吉本興業所属の芸人が幅を利かせる“ひな壇タレント”を、そっくり韓流と入れ替えるという計画だったそうだ。
日本国内で、KARAや少女時代がブレークした2010年。
日本音楽事業者協会会長で「尾木プロ」社長の尾木徹氏が、K-POPアーティストの誘致に尽力したと伝えられていた。
そして同時期頃から、広告代理店やテレビ局上層部の間では、こんな“定説”が存在していたという。
「2011年以降は、ゴールデンのバラエティから、吉本芸人はほとんどいなくなります。
代わりにひな壇に座るのがK-POPアーティストや、韓流タレントたち。
安定してレギュラー番組を続けられそうなのは明石家さんま、島田紳助、ダウンタウンくらいで、その他の芸人たちは有名無名問わず降板させていこうという方針でした」(広告代理店幹部)
ところが3月の震災で、エンタメ業界は数カ月ほど停滞状態が続くことに。
その前後に日本デビューを果たしたK-POPアーティストや、バラエティに登場した韓流タレントも少なからず存在したが、テレビ出演者が大幅に入れ替わるといった事態に至ることはなかった。
「紳助は引退してしまったし、高岡蒼佑のフジテレビ韓流傾倒批判など想定外の事態はいくつも発生しました。
特にネット上でのフジテレビ批判は見過ごせるレベルの話ではなく、連日の抗議デモやスポンサー企業の不買運動など、韓流に対する不安要素ばかりが高まっていきました」(同)
そして今回の竹島問題で、韓流コンテンツへの傾倒に関して沈黙を貫いてきたテレビ各局も、方針を表明。
フジテレビは当面韓流ドラマの放送予定はないとし、またBS日テレの定例会見では赤座弘一社長が「韓国ドラマが多すぎるのではという声もある。
少なすぎるという声はないので、今後、(韓流ドラマを)少なくしていく方向になると思う」と発言したことも話題になった。
0229デフォルトの名無しさん
2012/09/17(月) 03:31:35.590230216
2012/09/17(月) 09:45:18.66なるほど。分かりました。
とりあえず私はCをやっているのでこれでひとつのプログラムを作る力を身につけたら他の言語にもチャレンジしてみようと思います♪(=^^)/
ありがとうございました〜^∇^
0231デフォルトの名無しさん
2012/09/17(月) 09:53:54.48まずC#でやって、これってCとかだとどうやるのかなって感じで勉強すれば、開発に必要なことをスムーズに習得できる
C#は洗練されてて重要な機能は美しくまとまってるから、CやC++で勉強するときに生じるくだらない混乱がなく、PG入門、チュートリアルに最適なんだ
C# はとってもいい(作ってる人からしてセンスが違う)とみたのだが、
http://cruel.org/freeware/hacker.html
に掲載されることは、今後もないだろうな‥‥
0233デフォルトの名無しさん
2012/09/17(月) 10:23:54.830234デフォルトの名無しさん
2012/09/17(月) 10:42:38.03最初にもっとも難しい壁を越えようとするよりは、段階をつんで乗り越えるほうが賢い
0235デフォルトの名無しさん
2012/09/17(月) 10:46:01.32でも、C言語がもっとも難しい壁とか言ってたら色々とダメだろw
0236デフォルトの名無しさん
2012/09/17(月) 10:55:13.89参照さえあればどうかんがえてもいらないと思う。ポインタ演算は基本いらない。
malloc() の返り値で
int &a = malloc(sizeof(int))
とか
int &a = new int
とかできないものか?
0238デフォルトの名無しさん
2012/09/17(月) 11:28:44.92そのポインタ演算、あれば便利かもしれないけれどもそれは否定しないけれども、
基本的になくても「効率は落ちない」のではないかと、つつに考えておりまする。
C++ では確か void * の足し算引き算はできなかったはず。
0240デフォルトの名無しさん
2012/09/17(月) 11:34:19.43そんなこと言い出したらC#なんかのモダンな機能も、
>あれば便利かもしれないけれどもそれは否定しないけれども、
>基本的になくても「効率は落ちない」のではないかと、つつに考えておりまする。
なんて事になっちゃいそう。
0241デフォルトの名無しさん
2012/09/17(月) 11:39:38.18うーん。
その場合、確保失敗でのエラー通知方法が、例外しかなくなってしまうね。
c++
0242デフォルトの名無しさん
2012/09/17(月) 11:41:15.91>>237
うーん。
その場合、確保失敗でのエラー通知方法が、例外しかなくなってしまうね。
c++は良いとしても、cはどうなんだろうか。
0243デフォルトの名無しさん
2012/09/17(月) 12:06:49.85でも紛らわしいし、ポインタ一つの方がいい
0244デフォルトの名無しさん
2012/09/17(月) 13:00:51.42参照だと、参照先の変更ができないけどそこはどうする?
VB みたいに参照変更用の演算(Set)が必要になるな
0245デフォルトの名無しさん
2012/09/17(月) 13:20:28.280246デフォルトの名無しさん
2012/09/17(月) 15:25:06.99おまえさ、
int a; で済むことを
int& a = *new int; とかやってるの?
ジャイアントスイングで鉄柱に叩きつけて欲しいのか?
0247デフォルトの名無しさん
2012/09/17(月) 15:35:58.91int &qz = Mdesukara;
0248デフォルトの名無しさん
2012/09/17(月) 16:05:20.88int a; は int a; だろ…。
ポインタを参照で置き換える話なのに何言ってんだ?
0249デフォルトの名無しさん
2012/09/17(月) 16:05:45.880250デフォルトの名無しさん
2012/09/17(月) 16:11:27.32どうしても参照だとあれ…ってなっちゃうんだよな。
Java とか PHP とかやってるときにいつも迷う。というわけで個人的にはポインタ必須。
0251デフォルトの名無しさん
2012/09/17(月) 16:14:34.42だからそのとおり
俺に言うな
水月に掌底でも欲しいのか?
0252デフォルトの名無しさん
2012/09/17(月) 16:30:16.05弱く見えるぞ
0253デフォルトの名無しさん
2012/09/17(月) 16:37:04.67バカに見えるぞ
0254デフォルトの名無しさん
2012/09/17(月) 16:49:11.95技巧凝らすと読みづらいって言われるし
高等数学のようなエレガントさなの?
ちょっと書いて見本みせてください。
0255デフォルトの名無しさん
2012/09/17(月) 16:50:02.77何も書かないこと
0256デフォルトの名無しさん
2012/09/17(月) 17:07:38.57そうか、じゃ 2W のレーザーで遠くからがいいか?
0257デフォルトの名無しさん
2012/09/17(月) 17:43:12.310258デフォルトの名無しさん
2012/09/17(月) 17:44:08.640259デフォルトの名無しさん
2012/09/17(月) 17:50:14.46懇切丁寧な門前払い
0260デフォルトの名無しさん
2012/09/17(月) 18:10:29.30効率、短さ、分かり易さ のバランスじゃね
どれかを蔑ろにするとエレガントとは言われないだろう
見本は俺には無理
0261デフォルトの名無しさん
2012/09/17(月) 21:16:47.95このコードをエレガントにして下さい、って感じでサンプルコード出せば盛り上がると思うぞ。
0262デフォルトの名無しさん
2012/09/17(月) 21:31:32.550263デフォルトの名無しさん
2012/09/17(月) 21:33:23.950264257
2012/09/17(月) 21:57:37.44ありがとう。
0265デフォルトの名無しさん
2012/09/17(月) 22:24:17.990266デフォルトの名無しさん
2012/09/17(月) 22:37:12.92int & o = *new int();
delete &o;
0267デフォルトの名無しさん
2012/09/17(月) 23:25:50.03(64bit版だと)
0268デフォルトの名無しさん
2012/09/17(月) 23:26:34.150269デフォルトの名無しさん
2012/09/17(月) 23:29:00.150270デフォルトの名無しさん
2012/09/17(月) 23:29:49.640271デフォルトの名無しさん
2012/09/17(月) 23:30:07.58あ違った
4バイトか8バイトだ
>>268
場合によるとはどういうこと?
0272デフォルトの名無しさん
2012/09/17(月) 23:38:51.150273デフォルトの名無しさん
2012/09/17(月) 23:40:22.66つまりintのみ32bit、あとは64bit
0274デフォルトの名無しさん
2012/09/17(月) 23:41:10.61クソなバイナリがとたんに吐き出される
そしてあなたも会社から吐き出される
まるで便所のクソのように
0275デフォルトの名無しさん
2012/09/17(月) 23:58:29.78宇宙人の船に外付けしてコンピュータウィルスを注入して
宇宙船の防御システムを機能不全にしていたんだけど
あのウィルスってもともとはC言語で書かれていたものなのかな?
命令セットもなんなのかわかる?
0276デフォルトの名無しさん
2012/09/18(火) 00:02:46.68そのシステムは機械語かも知れないし
宇宙人の言語そのものかもしれない
そしてその手のコンパイラがあれば
ナニ言語で書いてもいい
翻訳機なんだから
!!
コンパイル通りますね。感謝です。
参照変数にポインタの先の実体をみせておいて、その参照に対して単項 & 演算子をとると(本来可変・動的であるところの)ポインタ値が得られるのですね。
何かに使えないかなあ‥‥‥。
0278デフォルトの名無しさん
2012/09/18(火) 00:51:15.230280デフォルトの名無しさん
2012/09/18(火) 01:36:07.04この分じゃC++11の右辺値参照とか全然分からないだろ
c++11なんて生きてるうちに到達できるかどうか‥‥勉強不足ですね
0282デフォルトの名無しさん
2012/09/18(火) 08:35:58.320283デフォルトの名無しさん
2012/09/18(火) 08:48:14.200284デフォルトの名無しさん
2012/09/18(火) 10:41:55.10今やクロスでないほうが珍しい件について
0285デフォルトの名無しさん
2012/09/18(火) 10:53:37.65{
p_str = (char*)malloc(6);
strcpy(p_str, "hello");
}
int main(void)
{
char* p_str;
get_str(p_str);
printf("%s\n", p_str);
return 0;
}
0286デフォルトの名無しさん
2012/09/18(火) 10:55:53.80U牙]テ瑞瑞瑞瑞瑞振牙]テ瑞瑞瑞瑞瑞振牙
コンパイラがバグって増す
0287デフォルトの名無しさん
2012/09/18(火) 10:57:02.13バカがコンパイラのせいにすんな
0288デフォルトの名無しさん
2012/09/18(火) 11:11:47.23| ノ ヽ/⌒) あばばばばばば
/⌒) (゚) (゚) | .|
/ / ( _●_) ミ/ ∩―−、
.( ヽ |∪| / / (゚) 、_ `ヽ
\ ヽノ / / ( ● (゚) |つ
/ / | /(入__ノ ミ あばばっあびゃばびゃばば
| / 、 (_/ ノ
| /\ \ \___ ノ゙ ─ー
| / ) ) \ _
∪ ( \ \ \
\_)
0289デフォルトの名無しさん
2012/09/18(火) 11:16:35.24{
*p_str = (char*)malloc(6);
strcpy(*p_str, "hello");
}
int main(void)
{
char* p_str;
get_str(&p_str);
printf("%s\n", p_str);
return 0;
}
これだと動いたんですが、前者だとなんで駄目なんですか
0290デフォルトの名無しさん
2012/09/18(火) 11:21:52.85printf の時点での p_str はどんな値になるか
0291デフォルトの名無しさん
2012/09/18(火) 11:33:23.000292デフォルトの名無しさん
2012/09/18(火) 12:27:27.86よーくわかってます、足りない知能を(プログラミング分野限定でいいから)増やす方法ってないですかね、他人のソースを読むのはどうでしょうか?
0293デフォルトの名無しさん
2012/09/18(火) 12:42:46.960294デフォルトの名無しさん
2012/09/18(火) 13:44:22.28友達の知識じゃ物足りなくなったら先輩と競い、先輩が物足りなくなったら神と・・・
JAXAの創始者糸川さんの名言
人生で大切なのは、
失敗の歴史である。
目標に向かって、
一段ずつ階段を上っていく上で、
いちばん肝心なことは、
必ず、最初の一段を上るということである。
そしてまた次に一段上るということである。
0295デフォルトの名無しさん
2012/09/18(火) 13:54:04.690296デフォルトの名無しさん
2012/09/18(火) 14:03:43.950297デフォルトの名無しさん
2012/09/18(火) 14:10:43.050298デフォルトの名無しさん
2012/09/18(火) 19:28:10.54int a;
} aaa;
enum {
xxx = (long) (&((aaa *)0)->a),
yyy = (long) (&((aaa *)0)->a + 1),
};
gcc4.2だとOK、VC2010だとyyyでコンスタントじゃないとエラー
VCのバグ?
0299デフォルトの名無しさん
2012/09/18(火) 19:34:28.40誰がそんなことしていいって言ったんだ?
0300デフォルトの名無しさん
2012/09/18(火) 19:39:06.390301デフォルトの名無しさん
2012/09/18(火) 19:40:11.52していいと決められてないから
0302デフォルトの名無しさん
2012/09/18(火) 19:41:19.61役にたたないクズ共だな。
0303デフォルトの名無しさん
2012/09/18(火) 19:49:33.290304デフォルトの名無しさん
2012/09/18(火) 19:51:15.41役立たずの上にうそつきか。生きてる価値ないな。
6.6 Constant expressions
7
- an address constant for an object type plus or minus an integer constant expression
0305デフォルトの名無しさん
2012/09/18(火) 19:57:43.01バカはテメーだ
ちゃんと嫁
0306デフォルトの名無しさん
2012/09/18(火) 20:08:21.89まず、(aaa *)0はアドレス定数だ。
そして6.6-9で
> The array-subscript [] and member-access . and -> operators, the address &
> and indirection * unary operators, and pointer casts may be used in the
> creation of an address constant, but the value of an object shall not be
> accessed by use of these operators.
とあるので、&((aaa *)0)->aもアドレス定数だ。そして6.6-7の
> - an address constant for an object type plus or minus an integer constant expression
で&((aaa *)0)->a + 1もアドレス定数になるじゃねーか。
バカ、嘘吐き。死ね。
0307デフォルトの名無しさん
2012/09/18(火) 20:24:15.70お前は前提からして間違ってるんだよ
バカバーカ
0308デフォルトの名無しさん
2012/09/18(火) 20:28:21.39VC2012 だとおk
0309デフォルトの名無しさん
2012/09/18(火) 20:29:45.78ちなみにうちのclangちゃんは文句言わなかったけど、
llvm-gccちゃんは同じようにyyyの方だけ怒った。
0310デフォルトの名無しさん
2012/09/18(火) 20:39:54.860311デフォルトの名無しさん
2012/09/18(火) 20:41:14.620312デフォルトの名無しさん
2012/09/18(火) 20:46:57.04どんなバカな事言い出すか楽しみだ。
0313デフォルトの名無しさん
2012/09/18(火) 21:12:02.73enum { yyy = (long) (&((aaa *)0)->a + 0)};
これでも怒る。vc2010ダメ杉だろ。
0314はちみつ餃子 ◆8X2XSCHEME
2012/09/18(火) 21:32:18.530315デフォルトの名無しさん
2012/09/19(水) 07:19:25.670316デフォルトの名無しさん
2012/09/19(水) 09:20:03.550317はちみつ餃子 ◆8X2XSCHEME
2012/09/19(水) 19:01:20.88JIS だと 6.6 の最後の方に「処理系は,定数式の他の形式を許してもよい」って書いてある。
GCC はこのルールを適用して許してるんじゃねーの。
-pedantic オプションを付けると警告は出すし。
0318デフォルトの名無しさん
2012/09/19(水) 19:34:53.81でも、VC2010では怒られるけどね。(long) &(&((aaa *)0)->a)[1]
Anaddress constant is a null pointer, a pointer to an lvalue designating
an object of static storage duration, or a pointer to a function designator;
it shall be created explicitly using the unary & operator or an integer
constant cast to pointer type, or implicitly by the use of an expression of
array or function type. The array-subscript [] and member-access .
and -> operators, the address & and indirection * unary operators, and pointer
casts may be used in the creation of an address constant, but the value of
an object shall not be accessed by use of these operators.
0319デフォルトの名無しさん
2012/09/19(水) 19:43:08.40int a;
} aaa;
enum {
xxx = (long) (&((aaa *)0)->a), //vc=ok,gcc=ng
yyy = (long) (&((aaa *)0)->a + 1), //vc=ng,gcc=ng
zzz = ((long)&((aaa *)0)->a + 1), //vc=ok,gcc=ng
ttt = offsetof(aaa, a) + 1, //vc=ok,gcc=ok
};
何ぞこれ?
0320デフォルトの名無しさん
2012/09/19(水) 20:14:27.85gccのNGは別のエラーじゃないの? 規格上enumはintという事になってるから
(long)が許されないとか。
offsetofって 0を構造体のポインタにキャストして、メンバーアドレスと
構造体そのもののアドレスをchar *にさらにキャストした差だから、
xxx = (long) (&((aaa *)0)->a), //vc=ok,gcc=ng
が通らないのはおかしい。
0321デフォルトの名無しさん
2012/09/19(水) 20:55:01.37http://ideone.com/
このあたりで、コンパイル実行してみたら
0322デフォルトの名無しさん
2012/09/19(水) 21:00:26.43いや int でも変わらん
ちなみに
-traditional では ok
-std=c89 では ng
-std=c11 では ng
-std=c++98 では ng
-std=c++11 では ok
0323デフォルトの名無しさん
2012/09/19(水) 21:19:04.600324デフォルトの名無しさん
2012/09/19(水) 21:34:02.38だよな
0325デフォルトの名無しさん
2012/09/19(水) 21:42:26.200326デフォルトの名無しさん
2012/09/19(水) 21:44:30.63今まで9899:1999ばかり使っていた
0328デフォルトの名無しさん
2012/09/19(水) 21:58:25.59関数オブジェクトみたいなのをマクロで定義出来るのかな?まだ良く読んでないけど
0329デフォルトの名無しさん
2012/09/19(水) 22:49:17.410330デフォルトの名無しさん
2012/09/20(木) 01:46:17.990331デフォルトの名無しさん
2012/09/20(木) 07:37:52.490332デフォルトの名無しさん
2012/09/20(木) 15:00:00.263分前にC言語をやってみようと思い立った僕が、C言語を書く環境を整えるに当たり一体どのサイトから何をダウンロードしたらいいのでしょうか??
0333デフォルトの名無しさん
2012/09/20(木) 15:03:25.26日本語でおk
0334デフォルトの名無しさん
2012/09/20(木) 15:15:12.03http://sourceforge.net/projects/mingw/files/MinGW/Base/gcc/
ここで mingw-get-inst-20120426.exe をポチる
0335デフォルトの名無しさん
2012/09/20(木) 15:19:45.03とにかくC言語の事を何にも知らないのですが、ぜひC言語でちょっとしたプログラムでも組んでみたいんです。
でもそのプログラムを組むにしても何かしら(コンパイラ?)をどこかのサイトからダウンロードして来なきゃいけないわけですよね?
その辺からヒントを頂きたいんです。
よろしくお願いします。
0337デフォルトの名無しさん
2012/09/20(木) 15:41:54.59OSはなんなんだよ・・・
0338デフォルトの名無しさん
2012/09/20(木) 15:51:39.240339デフォルトの名無しさん
2012/09/20(木) 17:06:47.900340デフォルトの名無しさん
2012/09/20(木) 18:29:33.46Windows7 64bitでした。
http://doremi.s206.xrea.com/c/index.html
これ読んでるんですが、MinGWをインストールした後、何をどうしたらいいのか解らないです…。
0341デフォルトの名無しさん
2012/09/20(木) 18:39:51.96それでわからないのならMinGWなんて誰が教えても理解させるのは無理
0342デフォルトの名無しさん
2012/09/20(木) 18:56:04.22ttp://www.forest.impress.co.jp/docs/news/20100428_364484.html
0343デフォルトの名無しさん
2012/09/20(木) 19:47:49.09◎ サクラエディタなどのテキストエディタ
基本的に、テキストエディタは、ワープロソフトではない
0344デフォルトの名無しさん
2012/09/20(木) 20:02:39.860345デフォルトの名無しさん
2012/09/20(木) 21:04:02.820346デフォルトの名無しさん
2012/09/20(木) 21:39:02.19path c:\mingw\bin;%path%
gcc --help
0347デフォルトの名無しさん
2012/09/20(木) 22:02:47.140348デフォルトの名無しさん
2012/09/20(木) 22:15:15.460349デフォルトの名無しさん
2012/09/21(金) 01:15:21.01unsigned char force;
unsigned char third;
unsigned char second;
unsigned char first;
};
union longMember {
long dword;
struct tagLong t;
};
こういう共用体があった場合
リトルエンディアンの場合
tagLongの並びは
force、third、second、firstとするべきか
first、second、third、forceとするべきか
どっちがいいとか決まってますか?
別にどっちでもかまわないでしょうか?
0350デフォルトの名無しさん
2012/09/21(金) 01:16:36.190351デフォルトの名無しさん
2012/09/21(金) 01:36:00.90つ[fourth]
0352デフォルトの名無しさん
2012/09/21(金) 08:35:14.05キミの順序付けの定義による。背の高い順にならべ/背の低い順に並べ。
>>850
ネットワークをサポートするインクルードファイル見たことない初心者さんですか?
0353デフォルトの名無しさん
2012/09/21(金) 08:55:29.35番号も判らないお間抜けさんですか?
0354デフォルトの名無しさん
2012/09/21(金) 09:01:45.330355デフォルトの名無しさん
2012/09/21(金) 09:17:09.91そんな変わった書き方ですかね?
まぁ自分の定義付けによるものならどっちでもよさそうな
感じですかね。
ちなみにfourthに修正しました。
0356デフォルトの名無しさん
2012/09/21(金) 09:31:47.20first: 〔順序の〕一番(目)、第一
以下略
順序が定義されてなきゃ意味がないんだよ。マヌケ。
0357デフォルトの名無しさん
2012/09/21(金) 09:40:32.90のかい?
つーかプログラマーってこんなのしかいないのかよ。
0358デフォルトの名無しさん
2012/09/21(金) 09:59:13.820359デフォルトの名無しさん
2012/09/21(金) 10:13:22.400360デフォルトの名無しさん
2012/09/21(金) 10:17:55.89構造体がどういう順で詰められるかもコンパイラ依存じゃなかったっけ
そこまで含めて実際のメモリ上どうなるかを見たうえで名前を付ければいい
バイトやビットって普通は下位から数えるよね?違うのかな
0361デフォルトの名無しさん
2012/09/21(金) 10:24:08.49エンディアンも同じ
0362デフォルトの名無しさん
2012/09/21(金) 11:06:24.89> 構造体がどういう順で詰められるかもコンパイラ依存じゃなかったっけ
JISの規格書はタダで読めるんだから、ウソ書かないように。
知らないなら出しゃばらなきゃいいのに。
0363デフォルトの名無しさん
2012/09/21(金) 11:37:44.890364デフォルトの名無しさん
2012/09/21(金) 11:53:09.04空きなく詰め込む指定ができないならば、役に立たないクズコンパイラ。
使う価値は無い。
0365デフォルトの名無しさん
2012/09/21(金) 12:08:25.50Sparcや68000用のコンパイラは屑ですか。そうですか。
世の中x86のようにワード境界を跨いでワードアクセスできるような変態ばかりじゃないんですよ。
>>356
>353はアンカーを指摘しているんだと思うよ。
0366デフォルトの名無しさん
2012/09/21(金) 12:15:09.39つかパック出来ないとメモリマップドI/Oとか使えなくね?
0367デフォルトの名無しさん
2012/09/21(金) 12:23:23.82#pragra packあるじゃん。
http://docs.oracle.com/cd/E19205-01/819-5265/bjacr/index.html
0368デフォルトの名無しさん
2012/09/21(金) 12:25:58.660369デフォルトの名無しさん
2012/09/21(金) 12:30:34.200370デフォルトの名無しさん
2012/09/21(金) 12:31:06.46longとかの値を奇数アドレスに置けるかっていうのと混ざってる気がする。
0371デフォルトの名無しさん
2012/09/21(金) 12:33:25.24アクセスするだけでアドレスエラーを出すようなコードを吐けって?
0372デフォルトの名無しさん
2012/09/21(金) 12:51:40.37ワードサイズ以下のデータをパックする事と、ワードデータをワード
境界に置く事は別の話。
0373デフォルトの名無しさん
2012/09/21(金) 13:34:09.96混同してると思ってるのはお前だけだと思うが。
0374デフォルトの名無しさん
2012/09/21(金) 14:26:00.69struct {
char a, b, c, d;
};
これをパックした構造体にアクセスしてバスエラー起こすCPUが存在するのか?
0375デフォルトの名無しさん
2012/09/21(金) 14:30:46.85>>364 は、
struct {
char a;
long b;
};
を隙間なくパックしろという話だろ。
0376デフォルトの名無しさん
2012/09/21(金) 14:39:46.360377デフォルトの名無しさん
2012/09/21(金) 14:45:17.78http://docs.oracle.com/cd/E19205-01/819-5265/bjacr/index.html
に、SPARCだったらバスエラー起こすいう記述もある。コンパイラはそのようにパックできる。
という事で、>>364に戻ると、パックできないクズコンパイラは実在するのか?
0378デフォルトの名無しさん
2012/09/21(金) 15:02:21.81> 空きなく詰め込む指定ができないならば、役に立たないクズコンパイラ。
いったいどんな話がしたかったんだよ。
>>377
なるほど、さすがC言語コンパイラだな。(w
0379デフォルトの名無しさん
2012/09/21(金) 15:17:00.73>>364に書いた通りだが、メクラか?
>>363が詰め込み方は処理系依存と言い出したから、詰め込み方は指定できる、指定できないのはカスといった。
パックとアライメントを区別出来なくて、踊ったのがお前。
0380デフォルトの名無しさん
2012/09/21(金) 15:23:56.84>>>363が詰め込み方は処理系依存と言い出したから、詰め込み方は指定できる、指定できないのはカスといった。
>パックとアライメントを区別出来なくて、踊ったのがお前。
char と long をパックしたら、(8bit マシンじゃなきゃ) アライメンとがそろわなくなるって話だろ。
混同してるのは、お前の方だ。
あと、#pragma の指定は処理系依存だぞ。
0381デフォルトの名無しさん
2012/09/21(金) 15:34:01.72しかし、実質的には指定できてあたりまえで、詰め込み方を指定できない処理系はカス
パディング無しの詰め込みで 要素内アライメントが狂うことはありえる
先頭要素がアライメント外になるかどうかは別の話
構造体サイズが必ずアライメント内になるかどうかは別の話? (最後尾要素に対する詰め物の有無)
0382デフォルトの名無しさん
2012/09/21(金) 15:37:32.04#pragmaはお前がSPARCや68000のコンパイラはパックできないとか言い出し
たからSUN Studioを反例として出しただけだ。
>>364では「詰め方は処理系毎に指定する方法がある。」と言っている。
で、おまえが>>365で言い出した、パックできない屑コンパイラは実在するのか?
0383デフォルトの名無しさん
2012/09/21(金) 16:21:29.72>>365 は、俺じゃねーよ。
自分以外は皆敵に見えるバカかよ。
> で、おまえが>>365で言い出した、パックできない屑コンパイラは実在するのか?
実在するかどうかは知らん、ただ規格で決まってないから、
> 詰め方は処理系毎に指定する方法がある。
とか言う奴はバカと言うだけのこと。
反論するなら、実在しないということを証明してからにしてくれ。
0384デフォルトの名無しさん
2012/09/21(金) 16:29:56.500385デフォルトの名無しさん
2012/09/21(金) 16:40:09.76お前のようなマヌケが複数いるはずないが、ID出ない事を良い事に逃げるつもりなのだろう。
でも、ID出なくてもお前が>>365であることはそのマヌケっぷりが証明している。
以下、お前が>>365と同程度のマヌケであることの証明
パックできないコンパイラが仮に実在するならそいつは屑コンパイラというのが、
オレの主張なので不存在を証明する必要はない。
0386デフォルトの名無しさん
2012/09/21(金) 16:41:53.95失せろゴミ
0387デフォルトの名無しさん
2012/09/21(金) 16:43:27.630388デフォルトの名無しさん
2012/09/21(金) 16:44:48.440389デフォルトの名無しさん
2012/09/21(金) 16:47:33.500390デフォルトの名無しさん
2012/09/21(金) 17:08:00.97完膚なきまでに叩きのめされる前に引き下がっとけばよかったのに…
それにしても68000やSPARC知ってるならかなりのオッサンだろうに、この無能さは憐れ。
0391デフォルトの名無しさん
2012/09/21(金) 17:15:06.11> ID出ない事を良い事に逃げるつもりなのだろう。
もうここまでくると、ちょっと哀れだな。
>パックできないコンパイラが仮に実在するならそいつは屑コンパイラというのが、
>オレの主張なので不存在を証明する必要はない。
自分の発言には責任持とうよ。
> 詰め方は処理系毎に指定する方法がある。
とか自信満々に語ったのは誰かなぁ。(w
まあ、#pragma が処理系依存であることも知らなかったんだろうな。
0392デフォルトの名無しさん
2012/09/21(金) 17:17:21.720393デフォルトの名無しさん
2012/09/21(金) 17:37:41.240394デフォルトの名無しさん
2012/09/21(金) 17:51:06.66失せろゴミ
0395デフォルトの名無しさん
2012/09/21(金) 17:59:29.13日本語不自由ですかあ?
つーか、引っ込みつか無いんだろうけど頭悪くて支離滅裂すぎる。
こんなにわかりやすく書いているのに理解できないのはマヌケなお前だけ。
>>364
> 詰め方は処理系毎に指定する方法がある。
> 空きなく詰め込む指定ができないならば、役に立たないクズコンパイラ。
> 使う価値は無い。
0396デフォルトの名無しさん
2012/09/21(金) 18:29:10.86> 使う価値は無い。
お前の下らん価値観なんて相手にしてない、自意識過剰すぎ。
指摘してるのは、ここだけ。
> 詰め方は処理系毎に指定する方法がある。
---
> つーか、引っ込みつか無いんだろうけど頭悪くて支離滅裂すぎる。
そのまま返すよ。(w
0397デフォルトの名無しさん
2012/09/21(金) 18:40:50.150398デフォルトの名無しさん
2012/09/21(金) 19:12:56.14喧嘩は結構だが、ちゃんと C の話をしやがれ
0399デフォルトの名無しさん
2012/09/21(金) 19:17:57.940400デフォルトの名無しさん
2012/09/21(金) 19:25:29.41 ̄ ̄ ̄ ̄ ̄ ̄ ̄V ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ___
__ (__ ) ≡≡≡
/ ヽ / / ̄
_ _、, _,, ヽ7 / ..へ._ V / ≡≡≡
v/ ヽ( )△ィ△ / ゙ii | |/
(( _(( _((ハ ' _ ) `ヘ/___. || | |
lWVl____|∩ ∩ Y_) ヾ |___. . || | | __,r‐、 ≡≡≡
. !_て7」VWl .ヾヷ゙゙ノノヾ, | ̄ || | | ̄__), \ (´⌒(´
ヾ (  ̄ ̄ ̄) ノ__,ノ‐-__ !! ノ_ノ ̄ . ヾ、__ノ ≡≡(´⌒;;;≡
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ .  ̄ ̄ ̄ (´⌒(´⌒;;
ズチャッターーーーーッ
0401デフォルトの名無しさん
2012/09/21(金) 19:39:44.08> お前の下らん価値観なんて相手にしてない、自意識過剰すぎ。
>>383のお前の言いがかりに対する反論だが、
> 反論するなら、実在しないということを証明してからにしてくれ。
これは取り下げって事だね。逃げだすなら最初っからつまらん言いがかり付けるなよ。
> 指摘してるのは、ここだけ。
> > 詰め方は処理系毎に指定する方法がある。
日本語不自由ですかあ?「毎」ってわかりますかあ?
| (接尾)
| 〔補説〕 「ごと」の転
| 名詞に付いて、そのそれぞれについて、の意を表す。ごと。
って意味ですよお。処理系のそれぞれに指定する方法があるという意味ですよお。
バカすぎる。
0402デフォルトの名無しさん
2012/09/21(金) 19:43:49.170403デフォルトの名無しさん
2012/09/21(金) 19:45:01.12だから、指定する方法がない処理系が (規格上は) あるって言ってるんですよお。
自爆乙 (w
0404デフォルトの名無しさん
2012/09/21(金) 20:24:42.37> > 処理系のそれぞれに指定する方法があるという意味ですよお。
> だから、指定する方法がない処理系が (規格上は) あるって言ってるんですよお。
自分の発言には責任もとうぜ。(規格上は)じゃなくて、実在すると言い切ってるんだから。
自爆乙 w
>>365
> >>364
> Sparcや68000用のコンパイラは屑ですか。そうですか。
> 世の中x86のようにワード境界を跨いでワードアクセスできるような変態ばかりじゃないんですよ。
0405デフォルトの名無しさん
2012/09/21(金) 20:48:01.313行くらいしかコードかけませんでした。
報告書もほとんど書けなくて3日で止めてしまったんですが
向いてないですかね?
0406デフォルトの名無しさん
2012/09/21(金) 20:50:23.60職場トータルで効率が上がるなら価値がある
つまり穴をうまくつかえばCマスターだ
0407デフォルトの名無しさん
2012/09/21(金) 20:51:26.250408デフォルトの名無しさん
2012/09/21(金) 20:53:12.56唯一の突っ込みどころだったんだが残念だったな。
詰め方は処理系毎に指定する方法がある。
空きなく詰め込む指定ができないならば、役に立たないクズコンパイラ。
使う価値は無い。
ただし、組み込み用コンパイラは除外する
0409デフォルトの名無しさん
2012/09/21(金) 20:55:49.29友達と一緒に募集したバイトです。
会社に損害与えた場合賠償金とか払わないとダメですかね?
3日でやめた[結局何もしてない]んですが連帯で給料1200円貰いました....
0410409
2012/09/21(金) 20:56:43.300411デフォルトの名無しさん
2012/09/21(金) 20:59:48.58出来ると判断して採用した責任が会社側にあるわけだし。
0412デフォルトの名無しさん
2012/09/21(金) 21:01:00.43バイトの人事分くらいなら何とでもなる気にするな
0413デフォルトの名無しさん
2012/09/21(金) 21:04:45.25故意に損害を与え無い限り賠償責任なんてないよ
でも何もできないってことに気づくまで3日かかるのはやばい
0414デフォルトの名無しさん
2012/09/21(金) 21:05:31.56>自分の発言には責任もとうぜ。(規格上は)じゃなくて、実在すると言い切ってるんだから。
俺は、>>465 じゃないんだが、指定する方法がない処理系はちゃんとあるんだな。
http://www.cs.bell-labs.com/who/dmr/cman.pdf
まあ、半分ネタだが、一番由緒正しいCコンパイラだしね。(w
>自爆乙 w
おいおい、何回自爆するんだよ。
0415デフォルトの名無しさん
2012/09/21(金) 21:07:48.73>ただし、組み込み用コンパイラは除外する
意味わからん、組み込み用の方が必要だと思うが…
0416409
2012/09/21(金) 21:09:21.37そうですよね。
自分以外の友達は職場の人とかなり親密に仕事の事について話したりしてました。
自分だけ何もせずにキョロキョロばかりしてました。
誰も僕の事に気付かなくて怖かったです...
貰った仕様書はオフィスの窓口に渡して
報告書も結局何もしてないので書く事がなくて今も放置したままです。
皆意外とプログラミングできるんですよね。
本当にショックだった。
以上独り言でした。
0417デフォルトの名無しさん
2012/09/21(金) 21:13:40.33そういう話はマ板でやれ
3行って、これか?
main()
{
}
0418デフォルトの名無しさん
2012/09/21(金) 21:18:55.53指定する方法が無いのじゃなくて、指定する必要が無いの。意味わかる?
まあ、今となっては使う価値が無い事は変わらないが。
0419デフォルトの名無しさん
2012/09/21(金) 21:29:35.74いつまでやってるのこの人たち
0420デフォルトの名無しさん
2012/09/21(金) 21:31:21.63>指定する方法が無いのじゃなくて、指定する必要が無いの。意味わかる?
君が書いたのは、
> 処理系のそれぞれに指定する方法があるという意味ですよお。
なんだよ。必要の有無なんて誰も言ってないよ。
---
> 完膚なきまでに叩きのめされる前に引き下がっとけばよかったのに… この無能さは憐れ。
とか、言ってる奴もいたから、従った方がいいんじゃね? (w
0421デフォルトの名無しさん
2012/09/21(金) 21:32:49.39自作自演じゃ無ければバカだから相手しちゃ駄目。
0422デフォルトの名無しさん
2012/09/21(金) 22:17:07.57PGもそうなんですか?
打ってはDELETEみたいな感じ?
0423デフォルトの名無しさん
2012/09/21(金) 22:28:38.16努力は嘘をつかない、という意味ではそう
前肢の物理的な動作とは関係ない
拙速を上回る巧遅こそ大切で、巧遅のふりをした怠慢が最悪
たとえばこんなところでコード貼らずに戯れ言をぬかすようなことだ
0424デフォルトの名無しさん
2012/09/21(金) 22:30:38.21後で設計を考えて作り直す
0425デフォルトの名無しさん
2012/09/21(金) 22:35:34.78その動きが早くなればなるほど一応は上級者です
ですからKBDをいかに素早く操るか
コードを打つだけではなく付随する全ての作業を
KBDからの操作・作業でいかに素早く仕上げられるか
その動きを追求しましょう
0426デフォルトの名無しさん
2012/09/21(金) 22:39:48.340427デフォルトの名無しさん
2012/09/21(金) 22:45:23.11ああいうのは即戦力だけだと思ってた
邪魔かと思って応募してなかったんだがやってみようかな
0428デフォルトの名無しさん
2012/09/21(金) 22:55:47.29企業にも迷惑をかけるが大人税って痛みを伴う世直しだ
それで勝機が見えればしめたもの
「当たり」は「外れ」を賭して張らなきゃ来るわけがない
バイトであろうが正社員であろうが
もらう金に値する仕事をするのが信義だ
ここが壊れているやつは死んでいい
0429デフォルトの名無しさん
2012/09/21(金) 23:03:32.91自分にできるのかできないかくらいは判るだろう
そして、できますと言えたなら、あとは他人の評価する事だ
本当にできる奴は、風船ガムのアタリよりは多いかなって程度だが
0430デフォルトの名無しさん
2012/09/22(土) 10:41:38.16手は止まってるのに
jjjjj
とか画面に連打状態なヤツいたなぁ
0431デフォルトの名無しさん
2012/09/22(土) 19:47:15.28それと、ちゃんとした形のプログラムを組むまではどの程度まで知っておいたほうがいいですか?
0432デフォルトの名無しさん
2012/09/22(土) 19:50:04.380433デフォルトの名無しさん
2012/09/22(土) 19:56:45.63じゃあC言語はどこで学べばいいのですか?
0434デフォルトの名無しさん
2012/09/22(土) 20:03:41.170435デフォルトの名無しさん
2012/09/22(土) 20:05:28.270436デフォルトの名無しさん
2012/09/22(土) 20:07:48.120437デフォルトの名無しさん
2012/09/22(土) 20:11:44.430438デフォルトの名無しさん
2012/09/22(土) 20:27:58.15Cでかくと、小さくて速いプログラムができます
十年以上前からある無料のコンパイラでもコンパイルできます
0439デフォルトの名無しさん
2012/09/22(土) 20:28:36.18初歩が済んだら後は実際に動いてるコードを読むだけ
FreeBSDが実装した関数やUNIXコマンドとかおすすめって言われてるね
GNUの実装はコーディングスタイルがひどくて精神を病むから読まない方がいい
0440デフォルトの名無しさん
2012/09/22(土) 20:30:51.830441デフォルトの名無しさん
2012/09/22(土) 20:36:19.000442デフォルトの名無しさん
2012/09/22(土) 20:41:08.800443デフォルトの名無しさん
2012/09/22(土) 20:41:40.19参考じゃなくてコピペじゃね
0444デフォルトの名無しさん
2012/09/22(土) 20:42:04.67コピペはしないけど
0445デフォルトの名無しさん
2012/09/22(土) 20:45:33.340446デフォルトの名無しさん
2012/09/22(土) 20:49:21.36代替がきかないのだ
0447デフォルトの名無しさん
2012/09/22(土) 20:49:54.17こういうやついるけど間違いだよ
時代にそぐわない古いやり方のコードとか間違えて覚えたら不利益
0448デフォルトの名無しさん
2012/09/22(土) 20:49:54.61UNIX 流儀の思考パターンに安住したまま
進化をやめてしまっている人がよくいる
0449デフォルトの名無しさん
2012/09/22(土) 20:53:19.38小さくて速いため、
ソフトウェアはC言語で記述されることが多い
組み込みシステム − Wikipedia
0450デフォルトの名無しさん
2012/09/22(土) 21:01:40.670451デフォルトの名無しさん
2012/09/22(土) 21:05:42.38考えついた奴は天才だね
0452デフォルトの名無しさん
2012/09/22(土) 21:18:37.290453216
2012/09/22(土) 22:06:53.79私もそうでしたがC言語っていうプログラム言語さえ覚えれば無料のフリーゲームみたいなものが作れるんだ!すげ〜とかそんな感じでした。
本当はC言語ってただのコンピュータとの情報やりとりの為の通訳さん代わりになるだけであってゲームやソフトを作るにはWinAPIやこんそ〜るAPIなどを学ばなければならない、と分かった時随分と自分を恨みましたよ^^;
プログラムってなんですか?って人は最初そんなもんだと思います。
実際は色々考えて自分で解決方法を導きだしたほうが知恵も身につきますし、過去を振り返ると後になって素敵な思い出になるんでしょうね
C言語はプログラム本体ではないのでC言語学習サイトでアプリケーション開発まで取り扱っているサイトは極少数しかないです。
ちゃんとしたプログラムってのがなんの事なのかわかりませんが、初心者が思うちゃんとしたプログラムは私なりの解釈でメモ帳やペイントのような一般的かつ実用的なアプリケーションの事ではないですか?
私もバリバリ初心者なので…(´・ω・`)
0454デフォルトの名無しさん
2012/09/22(土) 22:26:24.270455デフォルトの名無しさん
2012/09/22(土) 22:31:11.42だろjk
0456デフォルトの名無しさん
2012/09/22(土) 22:32:44.04ドシロウト釣りみたいなのは、やめれ
0457デフォルトの名無しさん
2012/09/22(土) 22:36:05.91それだけのことだ。
0458デフォルトの名無しさん
2012/09/22(土) 23:24:54.08入門レベルであれば、c言語はプログラムの原理をコンソールアプリ作成で学ぶ事を目的とし、
GUIアプリを作りたいならマウス操作で簡単に構築できるような適した言語を別途選択するのが良いと思います。
学ぶ目的が分からないので的外れかもですが、自分がPCで行う作業の自動化や効率化を目的とするなら、
c言語のコンソールアプリでも作成することが出来ます。
c言語は基礎構文(下記サイトの49章くらいまで)さえ覚えてしまえば、出来る事と、(簡単には)出来ない事の区別が出来るようになります。
出来そうならググって必要な標準関数や参考になるソースなどを探して組み合わせていけば、それなりのプログラムは作成できます。
職業PGしていますが、ぶっちゃけプログラミングは基本的な処理と、既存の処理を組み合わせるだけの簡単なお仕事です。
組み合わせの発想や効率や保守性やプロジェクトの糞規約等のしがらみ、品質保証のテストとドキュメント作成などで常に納期に追われるのですけれど…
webも良いですが、書籍の方が一連の学習が出来ますし、メモを書き込みながら進められるのでオススメです。
入門当時は猫でも分かるシリーズにお世話になりました。
web:http://www.kumei.ne.jp/c_lang/index_c.html
本:http://www.amazon.co.jp/猫でもわかるC言語プログラミング-第2版-猫でもわかるプログラミングシリーズ-NEKO-Series/dp/4797345659/ref=pd_cp_b_0
amazonのレビューだと低評価が多いみたいですが、良書だと思います。
きちんとした説明と、記述の結果がなぜそうなるのかといった根本的な動作についても触れているのが良かったと記憶しています。
要するにc言語は基礎構文を覚えればなんとかなるということです。
0459デフォルトの名無しさん
2012/09/22(土) 23:28:46.96ポインタを使わないなら他の言語で良い。
このジレンマ。
0460デフォルトの名無しさん
2012/09/22(土) 23:31:04.120461458
2012/09/22(土) 23:52:09.85簡単に基礎の49章までと書きましたが、提示したサイトは意外と時間のかかる49章立てなのですw
以下、基礎だけど面倒そうなのを抜粋。
第15章 構造体
第23章 配列とポインタの関係
第25章 文字列とポインタの関係
第28章 構造体とポインタ
第29章 変数のスコープおよびクラス
第32章 共用体
第33章 メモリの動的確保
第35章 関数へのポインタ
第39章 分割コンパイル
第43章 可変個の引数を取る関数
第49章 ビット単位の演算
>>460
アルゴリズムさえ見つけてしまえば、コードに落とすのは基礎構文の塊かと。
あと、覚える=仕組みを理解する、という事ですね。
簡単に出来そうになければ、c言語の既製ライブラリを見つけるか、あるいは別の言語をということで^^;
長文ばかりで失礼しました。
0462デフォルトの名無しさん
2012/09/23(日) 00:11:11.76入力ー>?ー>出力
?が出来ないことにはどうにもならない
もう、小学生レベルじゃ、通用しない分野も出てきてるからね
0463デフォルトの名無しさん
2012/09/23(日) 00:14:42.91パーツの組み合わせ肩が悪いだけで
それならそれを全自動化すればいい
0464デフォルトの名無しさん
2012/09/23(日) 00:18:10.48そんな妄想が通用すると思ってるところが...
0465デフォルトの名無しさん
2012/09/23(日) 00:21:39.530466デフォルトの名無しさん
2012/09/23(日) 00:27:15.43四元数の計算とか
クソのような座表計算とか
唸るような物理演算とか
天体のしみゅれーしょんとか
0467デフォルトの名無しさん
2012/09/23(日) 00:27:24.020468デフォルトの名無しさん
2012/09/23(日) 01:33:06.050469デフォルトの名無しさん
2012/09/23(日) 03:23:52.08せいぜい人工無能程度じゃね?
0470デフォルトの名無しさん
2012/09/23(日) 09:14:28.980471デフォルトの名無しさん
2012/09/23(日) 09:44:27.43クロスコンパイラってのがあってだな
0472デフォルトの名無しさん
2012/09/23(日) 09:58:21.86業務用アプリとか簡単なもので勉強してからゲームに取り組んだほうがいい
0474デフォルトの名無しさん
2012/09/23(日) 10:24:18.82業務用に劣るレベルのゲームプログラムであればさほど難しい環境ではないよ。
また、古参のプログラマーはゲーマガのような雑誌を糧に実地を習得していた事例もあるので
Cだからありえないって結論にはならない。
東方程度のシューティングやツクール程度のRPGならそれなり学習程度で習得可能。
0475デフォルトの名無しさん
2012/09/23(日) 10:35:55.480476デフォルトの名無しさん
2012/09/23(日) 10:35:57.43やってて面白いかどうかが肝心なのであって、そういうのはプアな 2D でも充分できる
0477デフォルトの名無しさん
2012/09/23(日) 11:22:42.20この中のCC_262.cの17行目の" ",buf[10]の意味を教えてください。
何のためにいれてるかよくわかりません。
0478デフォルトの名無しさん
2012/09/23(日) 11:32:20.800479デフォルトの名無しさん
2012/09/23(日) 11:35:22.150480デフォルトの名無しさん
2012/09/23(日) 11:37:04.610481デフォルトの名無しさん
2012/09/23(日) 11:44:14.300482デフォルトの名無しさん
2012/09/23(日) 11:50:20.89#include <stdio.h>
int main(){
char name[30]=" ";
char nami[30]="";
char nama[30];
int i;
for(i=0; i<8; i++)
printf("%02X %02X %02X\n", name[i], nami[i], nama[i]);
}
0483デフォルトの名無しさん
2012/09/23(日) 11:52:24.79何て本だか知らないけどさ、
ローカル配列の初期化をしている点から、ANSI規格制定以降なのは明白なのに
返り値の型すら省略してmain()だけにするような糞コード書いてるような本、
(仮にgets使用は初心者向けとして眼を瞑っても)かなり怪しい気がするよ。
0484デフォルトの名無しさん
2012/09/23(日) 12:04:03.13何が一番作りやすいの?
一応Cに対応しているライブラリとしてDirectXとかあるんですが。
何がポピュラーなのか知りたくて
大体ポピュラーなのは使いやすさも良いと思うし。
0485デフォルトの名無しさん
2012/09/23(日) 12:06:30.910486デフォルトの名無しさん
2012/09/23(日) 12:08:24.09文法的にもCとそんな変わらないんでしょ?
0487デフォルトの名無しさん
2012/09/23(日) 12:08:50.75どうせマシンパワー限られた環境は考えないし、低レベル操作とかが必要なものは作らないんだろ?
0488デフォルトの名無しさん
2012/09/23(日) 12:12:11.73ライブラリが充実してる
LINQなどの言語機能もクール
Cなどで書いた過去の資産も簡単に使える
開発環境が至れり尽くせり
0489デフォルトの名無しさん
2012/09/23(日) 12:12:38.42struct person *start=&dmy; の6行後に
start=&dmy; って、なにやりたいのかさっぱりわからんなぁ
とりあえず林晴比古はやめとけ
0490デフォルトの名無しさん
2012/09/23(日) 12:14:20.03開発者のセンスが輝いている。delphi 16bit版が出たときの熱狂は忘れられませんね。
0491デフォルトの名無しさん
2012/09/23(日) 12:14:53.10キャラクターの動きってどうやってプログラミングすればいいんですか?
0492デフォルトの名無しさん
2012/09/23(日) 12:15:00.21林晴比古・ソフトバンク
シニア編 w 普通は著者名だけで手に取る事すら避ける有害図書。
0493デフォルトの名無しさん
2012/09/23(日) 12:30:08.790494デフォルトの名無しさん
2012/09/23(日) 12:38:35.10で何すりゃいいのよ…
0495デフォルトの名無しさん
2012/09/23(日) 12:39:50.100496デフォルトの名無しさん
2012/09/23(日) 12:39:55.020497デフォルトの名無しさん
2012/09/23(日) 12:46:25.530498デフォルトの名無しさん
2012/09/23(日) 12:47:55.51表示とか凝らなくて済むから初心者でもとっかかれるぞ。たぶん。
0499デフォルトの名無しさん
2012/09/23(日) 12:48:34.66速度やマシン負荷を気にしない人なら。
0500デフォルトの名無しさん
2012/09/23(日) 13:14:56.97あれってどうやってプログラミングしてるの?
凄い知りたい
0501デフォルトの名無しさん
2012/09/23(日) 13:16:16.920502デフォルトの名無しさん
2012/09/23(日) 13:18:05.180503デフォルトの名無しさん
2012/09/23(日) 13:28:37.29柴田茫洋、ハーバートシルト辺りが内容を伴っていて優れているが
要点だけを理解したいのであれば上記の書籍。
さらに要点だけならCの絵本。
0504デフォルトの名無しさん
2012/09/23(日) 13:31:23.30K&Rでいいよ。入門書というよりは読み物的だけど
0505デフォルトの名無しさん
2012/09/23(日) 14:04:09.10作れっていうより俺の場合必要に迫られて作ってるな
画像を落とすとフォルダごとに1枚ずつ入っててしかも拡張子が取ってあるような
意地悪してるサイトがあるけどそれに例えば".jpg"を付けて他のフォルダにコピーするとか
連番を付けて定義ファイルを作らないと動かないソフトに自分で手で連番を振るのが
面倒なのでstrtok()とか使って自動で連番を振るとか
0506デフォルトの名無しさん
2012/09/23(日) 14:27:52.95そういうのはshellなりPythonなりPerlなり使ったほうが…
0507デフォルトの名無しさん
2012/09/23(日) 14:36:27.140508デフォルトの名無しさん
2012/09/23(日) 14:51:43.42表示は人体トレースやデザインドールをもとに起こす
入力はコントローラを読み取った値と経過時間の表を作るなどしてパターン判定(モールス符号のように)
判定はじゃんけんの手が3通りよりもずっと沢山あるイメージ
0509デフォルトの名無しさん
2012/09/23(日) 14:59:40.13シープラ使えばいいのになんでCなんでしょうか
0510デフォルトの名無しさん
2012/09/23(日) 15:12:56.560511デフォルトの名無しさん
2012/09/23(日) 15:39:10.71while (<STDIN>) {
print $_;
}
って書くものをCで書きたいのですが、どうするのでしょうか?
環境はgcc on FreeBSDです。
0512デフォルトの名無しさん
2012/09/23(日) 15:42:03.310513デフォルトの名無しさん
2012/09/23(日) 15:48:44.510514デフォルトの名無しさん
2012/09/23(日) 16:25:49.86#define BUFFER_SIZE 4992 /* 不足しているかもしれない */
#include <stdio.h>
int main(void) {
char *p;
char c[BUFFER_SIZE];
for(;;) {
p = fgets(c, sizeof(c), stdin);
if(p == NULL) {
break;
}
fputs(c, stdout);
}
return 0;
}
0515デフォルトの名無しさん
2012/09/23(日) 16:32:00.88#define BUFFER_SIZE 4992 /* 不足しているかもしれない */
#include <stdio.h>
int main(void)
{
char c[BUFFER_SIZE];
while( fgets(c, sizeof(c), stdin) ) { /* NULLを偽として利用 */
fputs(c, stdout);
}
return 0;
}
0516デフォルトの名無しさん
2012/09/23(日) 16:34:04.980517デフォルトの名無しさん
2012/09/23(日) 16:35:30.84BUFFER_SIZEです
0518デフォルトの名無しさん
2012/09/23(日) 16:35:44.280519デフォルトの名無しさん
2012/09/23(日) 16:39:56.000520デフォルトの名無しさん
2012/09/23(日) 16:41:19.84gp < file1 > file2
0521デフォルトの名無しさん
2012/09/23(日) 16:42:33.130522デフォルトの名無しさん
2012/09/23(日) 16:43:28.600523デフォルトの名無しさん
2012/09/23(日) 16:48:08.94Perlは、サイズがすくなすぎるかもしれないとか心配しなくていいですね
0524デフォルトの名無しさん
2012/09/23(日) 16:49:49.20int c;
while ((c = getchar()) != EOF) {
putchar(c);
}
0525デフォルトの名無しさん
2012/09/23(日) 16:50:04.480526デフォルトの名無しさん
2012/09/23(日) 16:58:29.72{
struct bwb_variable *p = &CURTASK var_start;
struct bwb_variable *v;
for (v = CURTASK var_start.next; v != &CURTASK var_end; v = v->next) {
if (v->common != TRUE) {
if (v->dimensions > 0) {
free(v->array_sizes);
free(v->array_pos);
if (v->type == NUMBER)
free(v->memnum);
else
free(v->memstr);
}
p->next = v->next;
free(v);
} else {
p = v;
}
}
return TRUE;
}
bwbasic2.10の変数削除ルーチンで、奇妙なソースがあったので気になった。
上記のfree(v)では実際にはメモリーがクリア等はされず、mallocでの確保候補に設定されるだけなので
実際のデータ自体は残ってるので v->next が有効なので動く。というコードなのだろうけど、
これは非常にトリッキーなコードに思える。
すくなくともスレッドセーフの保証は無いのではないか?と思う。そこでこれをもっと単純なコードに書き換えたい。例をあげよ。
0527デフォルトの名無しさん
2012/09/23(日) 17:01:09.98回線切ってマスでも掻いてろよ
0528デフォルトの名無しさん
2012/09/23(日) 17:03:19.25だからさ、アホ自慢はいいから。
0529デフォルトの名無しさん
2012/09/23(日) 17:06:30.51>上記のfree(v)では実際にはメモリーがクリア等はされず、mallocでの確保候補に設定されるだけなので
実装としてはそんなのもあるかもしれないが保証されないはず。
>実際のデータ自体は残ってるので v->next が有効なので動く。
free(v) したあとで v->next してはいけない。
0530デフォルトの名無しさん
2012/09/23(日) 17:08:56.30CURTASKがなんなのか知らないけど。
0531デフォルトの名無しさん
2012/09/23(日) 17:15:49.13ゴールデンアホコンビ乙www
0532デフォルトの名無しさん
2012/09/23(日) 17:17:44.30許すのですか?うーん‥‥
0533デフォルトの名無しさん
2012/09/23(日) 17:20:20.29許さないけど、それを解決したとしてもっていう意味
0534デフォルトの名無しさん
2012/09/23(日) 17:27:51.11{
struct bwb_variable* p = &CURTASK var_start;
struct bwb_variable* v = p->next;
while (v != &CURTASK var_end) {
struct bwb_variable* vn = v->next;
if (v->common != TRUE) {
if (v->dimensions > 0) {
free(v->array_sizes);
free(v->array_pos);
if (v->type == NUMBER)
free(v->memnum);
else
free(v->memstr);
}
p->next = v->next;
free(v);
} else {
p = v;
}
v = vn;
}
return TRUE;
}
0535デフォルトの名無しさん
2012/09/23(日) 17:37:01.24int fork とか int socketとかはダメなの?
0536デフォルトの名無しさん
2012/09/23(日) 17:39:30.05いいんじゃね?
#include <stdio.h>
int main(void)
{
char *printf="putchar";
puts(printf);
return 0;
}
0537デフォルトの名無しさん
2012/09/23(日) 17:41:09.78変数には、付帯情報の一部としてアドレスとサイズを持ちます。
関数にも、付帯情報のひとつとしてアドレスを持ちます。
アドレスは実行空間で唯一無二のもの、とすれば変数と関数で同じ名前にすることはできません。
fork() や soecket() はよく知られた関数名のひとつです。
0538デフォルトの名無しさん
2012/09/23(日) 17:42:58.940539デフォルトの名無しさん
2012/09/23(日) 17:44:03.56へええ、と思ったら記憶クラスが違うのね
0540デフォルトの名無しさん
2012/09/23(日) 17:44:18.06普通に同じ名前使うだろ
ループ変数で i とかよくある
0541デフォルトの名無しさん
2012/09/23(日) 17:44:35.48スレッドセーフとfreeした後の領域の参照は全然関係ない。
単にfreeした後に領域を参照していいのか? と聞けばいいだけ。
回答: 参照してはいけない。
修正方法は人に聞くまでもない単純な質問。
回答: 自分で考えろ。
0542デフォルトの名無しさん
2012/09/23(日) 17:49:56.88お前が「記憶クラス」を理解していないことが判明した。
> へええ、と思ったら記憶クラスが違うのね
全然違う。
0543デフォルトの名無しさん
2012/09/23(日) 18:05:42.31#include <stdio.h>
#include <ctype.h>
main()
{
int (*putchar)(int) = isalpha;
putchar('a');
}
0544デフォルトの名無しさん
2012/09/23(日) 18:06:55.75C言語でメモリを考える時です。
0545デフォルトの名無しさん
2012/09/23(日) 18:09:09.27スワップとか
メモリマップドファイルとか
0546デフォルトの名無しさん
2012/09/23(日) 18:09:38.820547デフォルトの名無しさん
2012/09/23(日) 18:09:52.98リンク時にぶつからないし…。それだけでいいんじゃない。>>537
0548デフォルトの名無しさん
2012/09/23(日) 18:14:44.41まぁほかの部分を見ないとわからんが、そもそもfreeしたところを触ってるコードじゃないんだってば。
0549デフォルトの名無しさん
2012/09/23(日) 18:21:24.48free(v); した後 for () の中の v->next に突っ込んでいるように見えるが……
0550デフォルトの名無しさん
2012/09/23(日) 18:23:16.98スワップとは具体的にどういうことでしょうか?
この機能がないと困る事は多いですか?
0551デフォルトの名無しさん
2012/09/23(日) 18:31:56.080552デフォルトの名無しさん
2012/09/23(日) 18:32:27.96ソートアルゴリズムなんかで多用される
0553デフォルトの名無しさん
2012/09/23(日) 18:33:22.850554デフォルトの名無しさん
2012/09/23(日) 18:33:43.10そんなんだからそんなアホな質問がだらだらと垂れ流しなんだ
ついでに脳みそも鼻から垂れ流しなんじゃないのかコイツ
0555デフォルトの名無しさん
2012/09/23(日) 18:34:12.440556デフォルトの名無しさん
2012/09/23(日) 18:36:26.33他のところ見ないでも
free(v);
の後で
for (... ; v = v->next) {
している。
他人のレスに言いがかり付けるときは1000回見直してからにしろ。
0557デフォルトの名無しさん
2012/09/23(日) 18:37:12.33c言語のswap()じゃなくて
HDDのほうです。
この機能無いと困るかどうかは書いてなったんで^^
ちなみにレポートです^^
0558デフォルトの名無しさん
2012/09/23(日) 18:40:10.22失せろゴミ
0559デフォルトの名無しさん
2012/09/23(日) 18:48:59.72出てけよアホ!!
テメーで調べろks!!!!
0560デフォルトの名無しさん
2012/09/23(日) 21:34:35.060561デフォルトの名無しさん
2012/09/23(日) 21:53:55.650562デフォルトの名無しさん
2012/09/23(日) 22:18:56.81レポートを秒速速攻でしあげなければならないのなら、そんな魔術はおもいつかないのですが、
すこし余裕があるのなら、
http://www.amazon.co.jp/dp/4756102131
をぱらぱらみて、おいしそうなところをつまんでみるのはどうでしょうか?
0563デフォルトの名無しさん
2012/09/23(日) 22:44:09.34ありがとー
OSを基礎から教えてくれる本凄い探してるんですよ
0564デフォルトの名無しさん
2012/09/24(月) 00:24:22.060565デフォルトの名無しさん
2012/09/24(月) 00:51:09.470566デフォルトの名無しさん
2012/09/24(月) 07:26:39.630567デフォルトの名無しさん
2012/09/24(月) 11:05:31.054 6 5
1 2 9
8 3 7
みたいな3×3+1マスあるパズルがあって
動かせるのは1〜9までのピース、□は動かすための余白一つ分
で最短で
□
1 2 3
4 5 6
7 8 9
に並び替えるためのプログラムが作りたいのですが完成プログラムお願いします。
0568デフォルトの名無しさん
2012/09/24(月) 11:25:39.840569デフォルトの名無しさん
2012/09/24(月) 11:26:07.670570デフォルトの名無しさん
2012/09/24(月) 11:32:08.39驚くほど簡単に出る
一般的に、
その手の15パズル亜種は
群論を使えば簡単に解ける
そのためのツール一式がGAP
0571デフォルトの名無しさん
2012/09/24(月) 11:36:23.570572デフォルトの名無しさん
2012/09/24(月) 19:21:24.68なぜ4が動かせないんだ?
0573デフォルトの名無しさん
2012/09/24(月) 19:31:52.38よく考えるんだ
0574デフォルトの名無しさん
2012/09/24(月) 19:38:13.02ケーニヒスベルクの橋
0575デフォルトの名無しさん
2012/09/24(月) 19:57:26.280576デフォルトの名無しさん
2012/09/24(月) 20:04:55.84空きマスに任意のピース1つを移動させるパズルなんだろうな
0577デフォルトの名無しさん
2012/09/24(月) 20:08:25.56最早Cでやる意味すらない
5000モリタポでどうですかね?http://toro.2ch.net/test/read.cgi/tech/1313183984/
問題を精密に記述ください。
1)初期状態から 5 を □に動かせますか?
2) 1)が是として、もと5があった位置に次の動かせる数字は何ですか、またその数字はどこに動かせますか?
0580デフォルトの名無しさん
2012/09/24(月) 20:59:43.42да нет
oui non
? ??
ja nein
??? ??-????
0581デフォルトの名無しさん
2012/09/24(月) 23:07:58.54空白になった時に持って来られるようにすればゲームは成り立つ?
0582デフォルトの名無しさん
2012/09/25(火) 00:41:16.39アドバイスお願いします
conio.h使ってるのでwinのみしか動かない(?)
http://codepad.org/83NiZzA7
0583デフォルトの名無しさん
2012/09/25(火) 00:41:42.552-6-9-7-8-3 の入れ替えに7手
合計10手ってこと?
0584デフォルトの名無しさん
2012/09/25(火) 00:48:43.370585デフォルトの名無しさん
2012/09/25(火) 00:56:12.661 3 5
□ 4 □
みたいな3×3マスあるパズルがあって 3と3は2マスで接着され、同時にしか動かせない
動かせるのは1〜6までのピース、□は動かすための余白一つ分 で最短で
1 3 5
2 3 6
□ 4 □
に並び替えたいのですが棋譜お願いします。
0586デフォルトの名無しさん
2012/09/25(火) 01:08:04.52失せろ
0587デフォルトの名無しさん
2012/09/25(火) 01:18:00.010588デフォルトの名無しさん
2012/09/25(火) 01:25:14.96422113556532211556632212366554
0589デフォルトの名無しさん
2012/09/25(火) 01:35:59.170590デフォルトの名無しさん
2012/09/25(火) 06:35:17.192 1 3
4 5 6
7 8 ■
から
1 2 3
4 5 6
7 8 ■
への並べ替えが不可能であることに気付くかが、群論センスを問われるポイントだろうな。
0591デフォルトの名無しさん
2012/09/25(火) 06:58:10.05____
/⌒ ⌒\ ホジホジ
/( ●) (●)\
/::::::⌒(__人__)⌒::::: \ はいはい
| mj |ー'´ |
\ 〈__ノ /
ノ ノ
0592デフォルトの名無しさん
2012/09/25(火) 07:24:38.65学校でCを教えるようになってから荒らしがひどくなった
いや学生がおかしいのではなく、頭のおかしい奴が増えだした
0593デフォルトの名無しさん
2012/09/25(火) 08:20:20.11あたまのおかしいクソ学生が増えたのでろう
キチガイは帰れ!
0594デフォルトの名無しさん
2012/09/25(火) 08:46:29.640595デフォルトの名無しさん
2012/09/25(火) 10:29:55.65ほら、放射線量高い韓国もキチガイばかりだろ?
放射能は脳もダメにするのは過去のデータから明らかだしな
0596デフォルトの名無しさん
2012/09/25(火) 11:12:18.760597デフォルトの名無しさん
2012/09/25(火) 11:18:33.460598デフォルトの名無しさん
2012/09/25(火) 11:19:07.360599デフォルトの名無しさん
2012/09/25(火) 12:06:57.001〜5の数字をランダムに生み出すメソッドが与えられている
このメソッドを使って1〜7をランダムに生み出す方法を考えろ。
ここでいうランダムとは等確率のこと。
0600デフォルトの名無しさん
2012/09/25(火) 12:13:50.14って、まさかそんな簡単な答えなわけないか。
0601デフォルトの名無しさん
2012/09/25(火) 12:13:55.00#include <stdio.h>
#include <stdlib.h>
int rnd5(void)
{
return rand()%5+1;
}
int rnd7(void)
{
int x;
for(;;)
{
x=(rnd5()-1)*5+(rnd5()-1);
if(x<7*3) break;
}
return x%7+1;
}
int main(void)
{
int i, count[7+1]={0};
for(i=0;i<10000000;i++) count[rnd7()]++;
for(i=1;i<=7;i++) printf("%d\n", count[i]);
return 0;
}
0602デフォルトの名無しさん
2012/09/25(火) 12:15:18.99乱数足したら確率分布変わるんじゃね?
0603デフォルトの名無しさん
2012/09/25(火) 12:17:41.970604デフォルトの名無しさん
2012/09/25(火) 12:27:20.750605デフォルトの名無しさん
2012/09/25(火) 12:51:11.94forの中で
if(x < 7) return x+1;
でよくね
0606デフォルトの名無しさん
2012/09/25(火) 12:51:28.36http://ideone.com/U1Vwj
0607デフォルトの名無しさん
2012/09/25(火) 13:03:33.700-24までの乱数が得られるから、無駄なループ回数を減らすために
「7以下」ではなく「24以下で最大の7の倍数以下」を生かそうとしていると思われる。
0608デフォルトの名無しさん
2012/09/25(火) 13:05:09.43それでもおっけーだね
無駄が多くなるけど
0609デフォルトの名無しさん
2012/09/25(火) 13:09:36.430610デフォルトの名無しさん
2012/09/25(火) 13:13:53.56(rnd5()*5+rnd5()) * 7 / (5*5)
とか、そんな感じの。
0611デフォルトの名無しさん
2012/09/25(火) 13:21:40.91間違いの例?
0612デフォルトの名無しさん
2012/09/25(火) 13:22:09.880613デフォルトの名無しさん
2012/09/25(火) 13:23:16.19泥臭いってのが分からん
0614デフォルトの名無しさん
2012/09/25(火) 13:28:49.600615デフォルトの名無しさん
2012/09/25(火) 13:32:34.01{
a = rnd5() + rnd5() + rnd5() + rnd5() + rnd5() + rnd5() + rnd5();
b = (a % 7) + 1;
return b;
}
0616デフォルトの名無しさん
2012/09/25(火) 13:32:52.61泥臭いって何なの。
0617デフォルトの名無しさん
2012/09/25(火) 13:33:05.26355 デフォルトの名無しさん [sage] 2012/08/31(金) 20:41:20.51
int f(int a, int b)
引数a以下で最大のbの倍数を返す関数f
書いて。
無駄なく、合理的に。
356 デフォルトの名無しさん [sage] 2012/08/31(金) 20:54:14.12
モジュロ求めて
引けばいいだけじゃねーの
357 デフォルトの名無しさん [sage] 2012/08/31(金) 20:55:27.50
int f(int a, int b)
{
return a - a % b;
}
358 デフォルトの名無しさん [sage] 2012/08/31(金) 20:55:59.43
そんなありきたりの方法は美しくない。
もっとこう、画期的で合理的なやり方ないの?
0618デフォルトの名無しさん
2012/09/25(火) 13:34:03.93偏りすぎわろた
0619デフォルトの名無しさん
2012/09/25(火) 13:34:36.42数学に夢見すぎwww
0620デフォルトの名無しさん
2012/09/25(火) 13:40:51.34中心極限定理 参照
そういうふうに和をとった段階で正規分布に近い形に偏りを見せるぞ
0621デフォルトの名無しさん
2012/09/25(火) 13:42:08.62は?
http://codepad.org/MhHw8qAg
0622デフォルトの名無しさん
2012/09/25(火) 13:42:19.57>>620
均等に見えるんだが
どうなったの?
0623デフォルトの名無しさん
2012/09/25(火) 13:46:27.360624デフォルトの名無しさん
2012/09/25(火) 13:48:23.98数学に夢見すぎwww
0625デフォルトの名無しさん
2012/09/25(火) 13:49:36.38アホか。5^7通りをどうやって7つ均等に割り振るんだ?
0626デフォルトの名無しさん
2012/09/25(火) 13:52:52.49素晴らしい答えだ
0627デフォルトの名無しさん
2012/09/25(火) 14:00:01.10あほらし
つきあってられんわ
0628デフォルトの名無しさん
2012/09/25(火) 14:07:06.35俺も「足してるんだから違うだろ」と一瞬思ったが
「場合の数」の合計は5^7。
0629デフォルトの名無しさん
2012/09/25(火) 14:25:23.530630デフォルトの名無しさん
2012/09/25(火) 14:30:36.83は?ぜんぜんわからねえわw
御託はいいから動くソースコード出してみろよ。お前の思いえがく完璧な動作ってのを見せてくれよw
0631デフォルトの名無しさん
2012/09/25(火) 14:31:08.38数学で夢見られるぞ
良かったな
足しただけの和だと、確かに正規分布に近い偏りになる、
けれども、modを通すと均等になる
さて
何故だ
0632デフォルトの名無しさん
2012/09/25(火) 14:41:47.18LISP使いになれば良いのに
0633デフォルトの名無しさん
2012/09/25(火) 14:41:48.07ttp://maniyax.net/project_cartoon/project_cartoon.gif
0634デフォルトの名無しさん
2012/09/25(火) 14:55:11.06http://codepad.org/AdSayNn1
0635デフォルトの名無しさん
2012/09/25(火) 15:30:35.940636デフォルトの名無しさん
2012/09/25(火) 17:10:50.11、コマンドプロンプトでカレントディレクトリを「C:\cwork」に変える方法がわかりません。
0637デフォルトの名無しさん
2012/09/25(火) 17:20:34.63スレタイを1000回声を出して読め。その質問はC言語には何の関係もない。
0638デフォルトの名無しさん
2012/09/25(火) 17:26:13.64こんな簡単な問題もわからないのか
0639デフォルトの名無しさん
2012/09/25(火) 17:28:22.230640デフォルトの名無しさん
2012/09/25(火) 17:30:56.930641デフォルトの名無しさん
2012/09/25(火) 17:32:57.35破って燃やせば?
0642uy
2012/09/25(火) 17:36:21.25すばらしいまでにスレ機能してねーなwwwwwwwwwwww
0643デフォルトの名無しさん
2012/09/25(火) 17:44:19.30うるせー、出てけ。二度と来んな。
0644デフォルトの名無しさん
2012/09/25(火) 18:02:43.72それが分からないように書いてある入門書なんて
入門書じゃない、
そしてお前の中ではその紙くずは
2ちゃんねる以下ってことになってるハズだ
0645デフォルトの名無しさん
2012/09/25(火) 18:10:47.59>>639がそのレベルに達していないだけ。
頭悪そうだから、想定する読者のレベルに達するまで多分10年くらいかかるだろう。
0646デフォルトの名無しさん
2012/09/25(火) 18:18:42.400647デフォルトの名無しさん
2012/09/25(火) 18:26:33.070648デフォルトの名無しさん
2012/09/25(火) 18:28:51.71ググれば出てくるだろうに
0649デフォルトの名無しさん
2012/09/25(火) 18:28:55.82あくなき向上心で出来ております
0650デフォルトの名無しさん
2012/09/25(火) 18:38:01.00REM cw.bat
C:
CD \cwork
0651デフォルトの名無しさん
2012/09/25(火) 19:22:39.340652デフォルトの名無しさん
2012/09/25(火) 19:34:05.520653デフォルトの名無しさん
2012/09/25(火) 19:46:53.905 と 7 という風に近いから「たまたま」うまくいうようにみえる。
でも同じ考え方で 5 と 31 とか 5 と 203 とかでやるとどうなるだろうか?
http://ideone.com/JgpL2
だめなんじゃない?
0655デフォルトの名無しさん
2012/09/25(火) 21:38:53.14出目の出現確率 最小14.264% 最大14.307%
で均等にはならないと出た
#include <stdio.h>
void hoge(int count[], int sum, int rest){
int i;
if(rest<=0){
count[sum]++;
return;
}
for(i=1;i<=5;i++) hoge(count, sum+i, rest-1);
}
int main(void)
{
int i, count[36]={0}, count2[7]={0}, total=0;
hoge(count, 0, 7);
for(i=0;i<sizeof(count)/sizeof(count[0]);i++){
if(count[i]) printf("%2d : %d\n", i, count[i]);
count2[i%7]+=count[i];
total+=count[i];
}
for(i=0;i<7;i++) printf("%d %.3f%%\n", count2[i], count2[i]*100.0/total);
return 0;
}
0656デフォルトの名無しさん
2012/09/25(火) 21:44:04.48じゃねーよwww
この手の話は数学の証明だからYO、
プログラミンングじゃねーんだよ()
バカはすっ込んでろw
0657デフォルトの名無しさん
2012/09/25(火) 21:54:24.25アホやなぁ
どう見ても一様乱数なのにwww
0658デフォルトの名無しさん
2012/09/25(火) 21:54:33.65バブルソートなんですがこれって半分に分けてソートしたほうが早くないですか?
n個あったらn(n-1)/2かかりますよね?
真ん中で分けたらn(n/2-1)/2で澄むと思うのですが....
0659デフォルトの名無しさん
2012/09/25(火) 21:55:23.21反射でしかレスできねーの?
何やってるか読めよ
0660デフォルトの名無しさん
2012/09/25(火) 21:56:07.81マージソートですな
0661デフォルトの名無しさん
2012/09/25(火) 21:57:45.10氏ね。チンカス。ド素人。
0662デフォルトの名無しさん
2012/09/25(火) 21:59:03.11ざわ…ざわ…ざわ…
うわああ、ヤツが来るぞ
そりゃ 5 と 7 は近いからね。
でも、5 と 203 とかだったらだめだね。おっと >>654 はすこし違ってたね。
http://ideone.com/JBM4f
すごーく偏るねえ。
0664デフォルトの名無しさん
2012/09/25(火) 22:00:19.40hogeとか使うから確率がおかしくなるんだよ
ちゃんとした名前に変えれば安定するぞ?
0665デフォルトの名無しさん
2012/09/25(火) 22:02:33.27カス乙
rnd5がそもそも一様じゃないからwww
こんな簡単なことまでいちいち教えてもらわないとわからないのか?
0666デフォルトの名無しさん
2012/09/25(火) 22:11:38.37試行回数も多くしろ
0667デフォルトの名無しさん
2012/09/25(火) 22:12:36.370668デフォルトの名無しさん
2012/09/25(火) 22:14:22.21うん、わからない。
rnd5() が厳密には一様ではないのと、>>663 とどう関係あるの?
というか、5 と 7 でうまくいっても 5 と 203 でうまくいかないのであれば、やっぱ、やりかたとしてだめなんじゃない?
0670デフォルトの名無しさん
2012/09/25(火) 22:21:43.45rnd5が一様乱数ならNがなんだろうが一様乱数
それ以上でも以下でもないお前が勘違いしてるだけ
0671デフォルトの名無しさん
2012/09/25(火) 22:23:20.110672デフォルトの名無しさん
2012/09/25(火) 22:33:19.39したがって、5^n == 7 * m を満たす自然数nとmの組み合わせは存在しない。
>>615で、それぞれのrnd5が返す値により場合わけすると、5^7通りで
それが均等に現れる。(出題>>599の前提として、rnd5が均等であるので)
5^n % 7 は 0 にはならないので、当然 5^7 % 7 も 0にはならず
5^7の全てのケースを7つ(のrnd7の返り値)に均等に割り振ることは出来ず
>>615のrnd7は均等ではない。
0673デフォルトの名無しさん
2012/09/25(火) 22:36:10.040点やり直し
0674デフォルトの名無しさん
2012/09/25(火) 22:39:23.85おまえ本物のバカだろ
0675デフォルトの名無しさん
2012/09/25(火) 22:41:27.770676デフォルトの名無しさん
2012/09/25(火) 22:45:04.76いや本物のバカは672だよ
672はドヤ顔で証明した気になってるけど縮退を考慮しないで恥さらしてるだけのただのチンカス野郎
0677デフォルトの名無しさん
2012/09/25(火) 22:45:45.70>>599の問題の「rnd7を作る」という点については、まったく影響しない。
↑この点が、バカには理解できない。
実際、>>615はrnd5なんか作ってないし
>>601がrnd5を作った意図は、単にコンパイルが通るようにするだけと思われる。
何故ならsrandすら呼んでないし、rnd7では神経質に一様にさせているのに
rnd5は何も気にしていないから。
そもそも出題では、rnd5は自分で作るのではなく、出題者から与えられるものだから。
0678デフォルトの名無しさん
2012/09/25(火) 22:46:50.66「場合の数」が5^7通りなのは理解できてる?
0680デフォルトの名無しさん
2012/09/25(火) 22:48:45.34その先は無いぞ
0681デフォルトの名無しさん
2012/09/25(火) 22:49:06.94ゲームのアホサイコロ作るんだな。
バカセプトのアホサイコロとか。
基本が出来てないksばかりじゃん。
ダメだわこりゃ。
よーくわかった。
プログラマを試すにはサイコロ作らせよう。
そいつがアホかどうかを見分ける。
0682uy
2012/09/25(火) 22:50:46.82お前の頭じゃそれが限界か
それじゃあ615のrnd7がなぜ一様なのか一生かかってもわからないんだろうな
俺様はこの程度なら1分とかからずからくりを見抜いたがこれが凡人との差なんだろうな
0683デフォルトの名無しさん
2012/09/25(火) 22:52:30.20rnd7は
1を返す確率は 11161 / 78125
2を返す確率は 11161 / 78125
3を返す確率は 11161 / 78125
4を返す確率は 11161 / 78125
5を返す確率は 11161 / 78125
6を返す確率は 11160 / 78125
7を返す確率は 11160 / 78125
になる。
0684デフォルトの名無しさん
2012/09/25(火) 22:53:12.58一生わからねー人が正常だよ
どんな世界に住んでるんだよ
0685デフォルトの名無しさん
2012/09/25(火) 22:54:50.801を返す確率は 11177 / 78125
2を返す確率は 11172 / 78125
3を返す確率は 11158 / 78125
4を返す確率は 11144 / 78125
5を返す確率は 11144 / 78125
6を返す確率は 11158 / 78125
7を返す確率は 11172 / 78125
になってるけどな
0686デフォルトの名無しさん
2012/09/25(火) 22:57:41.140-4じゃなくて1-5なんだね。
確かに俺が間違えてた。
均等でないという結論を変えるつもりはないけど。
0687デフォルトの名無しさん
2012/09/25(火) 22:59:20.72それでも結(ry
0688デフォルトの名無しさん
2012/09/25(火) 23:11:07.41こうすると1-5^7までの数字が均等に現れるから>>683になる。
>>615だと5^7なのは場合の数であって、数値は最大でも35だもんね。
計算はしてないけど、>>685的な偏りがあって当然だね。
そりゃ線形合同で高次の組ベクトルを作ってうんぬんだと、すっごくまずいんだろーけど、今は203回足しこんでるだけなのに、それでも問題なの?
>>666
じゃ MT でやってみるね。えい!
http://codepad.org/ou6zYWFE
やっぱりすごーーーく偏るんですけど。
5 と 7 でOK でも 5 と 203 で、しかも最強の MT 使ってもだめならば、やっぱ、やりかたとして間違っているんじゃない?
http://codepad.org/2ytmKYz6
0691デフォルトの名無しさん
2012/09/25(火) 23:23:47.020692デフォルトの名無しさん
2012/09/25(火) 23:29:08.575 と 7 でOK でも、 5 と 23 で、しかも最強の MT 使ってもだめならば、やっぱ、やりかたとして間違っているんじゃない?
0694デフォルトの名無しさん
2012/09/25(火) 23:32:47.690696デフォルトの名無しさん
2012/09/25(火) 23:36:12.740697デフォルトの名無しさん
2012/09/25(火) 23:40:16.830698停止しました。。。
2012/09/26(水) 00:30:16.230699デフォルトの名無しさん
2012/09/26(水) 00:32:48.420700デフォルトの名無しさん
2012/09/26(水) 00:44:36.450701デフォルトの名無しさん
2012/09/26(水) 01:23:09.84ドイツでは、小数点は、点ではなくコンマにする。桁区切りを点にする。
ドイツ語(ドイツ) 1.234,0
フランスでは、桁区切りは、空白にする(?)
フランス語(フランス) 1 234,0
日本は、米国式だ。
英語(米国) 1,234.0
ttp://homepage1.nifty.com/tabotabo/ccc/syosu.htm
0702デフォルトの名無しさん
2012/09/26(水) 01:24:14.63めんどくさいなぁ
0703デフォルトの名無しさん
2012/09/26(水) 01:28:48.46日本国内で辛うじてワイド文字列が使える程度か?
ドイツとかフランスに行けばそういうlocaleを含んだビルドが出まわっているかもしれないが
少なくともお目にかかった事がない
0704621
2012/09/26(水) 06:31:38.58なんなの?通り魔?
アホが式をアホ解釈して、計算結果が変になった→元の式も間違えてたはずだ(キリッ
なんなの?通り魔だろこれ…
池沼が勝手に改悪して結果を変にして、その原因をこっちに押し付けてくるって、通り魔すぎるわ…orz
http://ideone.com/EGude
もうやだ、このスレ
0705 ◆QZaw55cn4c
2012/09/26(水) 06:53:19.72>int a = rnd5() + rnd5() + rnd5() + rnd5() + rnd5() + rnd5() + rnd5();
>int b = (a % 7) + 1;
modulo 7 に対して7回じゃたりなくて
>>704
>for(i =0; i<8120; i++) a += rnd5();
>return (a % 203) + 1;
modulo 203 に対して 8120回、足しこんだのね。
ふーん(棒)
あと
>int l[1234];
>for(i=1;i<=203;i++)
>printf("%d\n", l[i]);
こういうの好きくない。
>void main()
爆笑、いや、もー、どうでもいいですけど。
0706デフォルトの名無しさん
2012/09/26(水) 07:03:25.600707デフォルトの名無しさん
2012/09/26(水) 10:05:29.94なぜrnd5を足すのは8120回なんでしょうか?
0708デフォルトの名無しさん
2012/09/26(水) 11:14:41.120709621
2012/09/26(水) 13:09:39.331から5を平均的に返す乱数関数を使って、
1から10009を平均的に返す乱数関数。
http://ideone.com/7IcWw
0710デフォルトの名無しさん
2012/09/26(水) 13:14:59.62実用上は誤差の範囲かもしれないが
数学的には
pow(5, n)%10009 != 0
なので必要条件を満たさない
0711621
2012/09/26(水) 14:54:21.45その論法お気に入りみたいだけど、
仮に 5^n mod 7 = 6 が常に出つづける最悪ケースを考えてさえ
lim 6 / (5^n) = 0
n->∞
極限では誤差0に収束するから数学的に考えればむしろ条件満たしてるんじゃねえの?
0712621
2012/09/26(水) 15:43:53.770713デフォルトの名無しさん
2012/09/26(水) 16:15:23.17それが成り立つためには無限回数 rnd5 を呼び出す必要があるってのは分かってる?
0714デフォルトの名無しさん
2012/09/26(水) 17:29:35.590715 ◆QZaw55cn4c
2012/09/26(水) 21:38:12.95階乗進数をつかって巨大数を作り、それに比べれば微小な 10009 で割った余りをとっているだけだね。ま、よく工夫したね。
しかし階乗進数の作成が穴だらけ。
n < 5の phi(n) に対して、rnd5() は は 5 を出すこともあるぞ。
n > 5 の phi(n) に対して、6〜n の値はでない。
phi(15) は 15 回 rnd5() を呼び出して一様な巨大数を作成しているつもりだが、結果は一様とは「ほど遠い」。
しかし phi(15) に比べると 10009 ははるかに微小だから、剰余が一様に分布しているようにみえるだけ。
>>704 同様、除数に比べると巨大な数を作っているが、その根拠がない。
やりなおせ。
0716デフォルトの名無しさん
2012/09/26(水) 22:13:23.20再び恐縮ですが、そのコードを理解すれば理由がわかるのでしょうか?
そのコードに対してもまた疑問が出てくる始末です
解説もしくはキーワードなどなんでもよいので理解へのポインタを示していただけないでしょうか?
#新たな疑問 rnd10009の場合、phiの引数が15なのはなぜでしょうか?
0717デフォルトの名無しさん
2012/09/26(水) 22:23:00.08rand(P(n)) mod nは[0,n)の一様乱数なのでrnd5からP(7)を作ればおしまい簡単だね
0718デフォルトの名無しさん
2012/09/26(水) 22:37:22.030719デフォルトの名無しさん
2012/09/27(木) 00:15:14.810720デフォルトの名無しさん
2012/09/27(木) 02:23:27.093級持ってるから2級か1級目指そうと思ってる。
0721 ◆QZaw55cn4c
2012/09/27(木) 02:40:53.33階乗進数
phi(15)の15 はできる限り大きな数を生成したいということで long long int の大きさ比べて決めた値では?
うまくいってないけど。
>>717
P(n)の分散Vに比較して n が小さいと駄目なのでは?そしてその目安は?
0722デフォルトの名無しさん
2012/09/27(木) 02:55:41.81Cの資格でググってみたらサーティファイ情報処理能力認定委員会って奴のC言語プログラミング能力認定試験ってのが上位にヒットするけどこれのこと?
就職のための箔を付ける意味ではプログラミング言語だけを中心にした資格はちょっと説得力が弱いかも。
情報技術者試験も意識した問題形式って書いてあるけど、そんならもう情報技術者試験を受けろよと思う。 情報技術者試験の方が安いし。
資格をどう評価するかは会社によって全然違ったりする。
ただ、応募者が多い会社を受ける場合は資格の有無で足切りされるのでなんであれ資格はあった方がいい。
0723デフォルトの名無しさん
2012/09/27(木) 02:58:16.04rnd7は引っ掛け
0724 ◆QZaw55cn4c
2012/09/27(木) 03:01:17.66逆だ。P(n)の分散が小さいと問題だ。
0725デフォルトの名無しさん
2012/09/27(木) 03:04:51.280726デフォルトの名無しさん
2012/09/27(木) 03:42:42.01>>376
つ水墨画
シベリウスの音楽は全部ハ長調でも問題ない
0727デフォルトの名無しさん
2012/09/27(木) 04:02:13.96自分を実物以上に大きく見せて虚構を作りたがるのは「弱い犬ほどよく吠える」と同じ原理
0728デフォルトの名無しさん
2012/09/27(木) 07:47:02.240729デフォルトの名無しさん
2012/09/27(木) 07:47:12.58分散は関係無いよ
対称性と幅がニエヌ倍だけでいい
0730デフォルトの名無しさん
2012/09/27(木) 07:49:42.09>>654 や >>689 は対称性だけではうまくいかないことを示しているのでは?
n にたいして p(n) が大きく散らばらないといけないのでは?
0731デフォルトの名無しさん
2012/09/27(木) 08:49:39.27出来るプログラマっていう風潮は会社にあったりするの?
やっぱそういう奴って傍から見てて憎たらしい?
0732デフォルトの名無しさん
2012/09/27(木) 08:55:45.760733デフォルトの名無しさん
2012/09/27(木) 09:09:14.16ストレス感じてるならここで吐いて良いよ。
0734デフォルトの名無しさん
2012/09/27(木) 09:35:10.210735デフォルトの名無しさん
2012/09/27(木) 10:11:12.04ム板の方がいいんじゃね?
でもあっちは愚痴を言えるかわりに愚痴を読むはめになるから
あんまり居たいスレじゃないわな。
0736デフォルトの名無しさん
2012/09/27(木) 10:17:39.36分散とか言ってる奴も対称性とかいってる奴も
頭悪いくせに賢いふりをしようとしてるだけ
バカすぎる
0737デフォルトの名無しさん
2012/09/27(木) 10:28:29.040738デフォルトの名無しさん
2012/09/27(木) 10:29:38.030739デフォルトの名無しさん
2012/09/27(木) 10:43:58.75バカでもわかるように説明しよう。
サイコロは一個の出目1-6は一様分布、それではサイコロ2個をふった時の
出目の和2-12は一様分布か?
小学生でも(一様分布という言葉の意味さえわかれば)違うと答えられる。
わざわざプログラム書いて検証するまでもない。
0740デフォルトの名無しさん
2012/09/27(木) 11:12:22.23困ったちゃん。
0741デフォルトの名無しさん
2012/09/27(木) 11:21:27.600742デフォルトの名無しさん
2012/09/27(木) 11:23:23.75is_random()
0743デフォルトの名無しさん
2012/09/27(木) 11:25:45.40int rnd5(){return rand()%5+1;}
int pw5(int a){return a==0 ? rnd5()-1 : 5*pw5(a-1);}
int x5(int a){return a==0 ? pw5(0) : pw5(a)+x5(a-1);}
int rnd7=x5(5)/2232+1;
0744デフォルトの名無しさん
2012/09/27(木) 11:33:43.72こうか?
#include<stdio.h>
int main()
{
puts("お前はバカ");
}
0745デフォルトの名無しさん
2012/09/27(木) 12:15:34.65>599
>1〜5の数字をランダムに生み出すメソッドが与えられている
>このメソッドを使って1〜7をランダムに生み出す方法を考えろ。
一行目にあるようなメソッドを数回呼んで、出目を巧く加減(乗除)すれば
二行目にあるように1~7をランダムに生成できることは誰でも想像に難くないと思う。
実際、20面さいころに1-5を4セット書けば、一行目にあるようなメソッドをシミュレートできる。
しかし、話がややこしいからまずは普通の6面さいころを二回振ることを考えよう。
一回目の出目は当然1~6、二回目も当然1~6なので、単純に足した場合は
出目が2~12、平均値である7の出現確率は1/2、両端である2や12の出現確率は1/12となる。
これでは等確率という条件を満たすことは到底できそうにないことも想像できるだろう。
実際、振る回数を増やしたとしても出現確率は正規分布の様相を呈してしまう。
同じように二回振って、一回目を6倍して、二回目を足してみよう。
これはちょっとややこしいが、それぞれの出目を1引いてから同じように計算すると0~35となり、
出現確率は等しく1/36になることが判る。
これは問題の条件を満たすことが充分できそうだと思えれば、後はそれほど難しくない。
一番単純には、上のように二回振って掛け合わせた結果の0~6のみを採用すればいい。
その方式なら、6面さいころだろうと問題にあるメソッドだろうと同じ要領で済む。
後者を簡単にコードで表すと、こうなる。
--
int rnd7()
{
int value;
do {
value = (rnd5() - 1) * 5 + (rnd5() - 1);
} while (value < 7);
return value + 1;
}
一様分布[0, 1)の分散は 1/12 って計算したことないの?教科書すら読まない馬鹿なの?
>>739
その >>621 と Q はガチに対決中ですけどね。
それはともかくその論拠は >>621 によれば意味をなさないとのことだ。
つまり、さいころの出目そのものではなくて、その剰余を考えている。
一様分布の和に対して剰余をとったとき、その剰余は(条件付にせよ)一様分布かどうか?
うそくさいけど肯定材料も否定材料も今のところでていない。
0747デフォルトの名無しさん
2012/09/27(木) 12:39:07.280748デフォルトの名無しさん
2012/09/27(木) 12:49:08.060749デフォルトの名無しさん
2012/09/27(木) 12:50:12.78↓を見ると理解していたとは到底思えないけど。www
>>721
P(n)の分散Vに比較して n が小さいと駄目なのでは?そしてその目安は?
>>724
> 逆だ。P(n)の分散が小さいと問題だ。
0750デフォルトの名無しさん
2012/09/27(木) 12:59:37.95理論的な分散(n^2 -1)/12にどれだけ近いかシミュレーションで求めるよな。
>>654とかお笑い。
> だめなんじゃない?
> だめなんじゃない?
> だめなんじゃない?
> だめなんじゃない?
> だめなんじゃない?
0751デフォルトの名無しさん
2012/09/27(木) 13:13:33.36それを書いた時から必死にぐぐって見つけたんでしょ
こいついつも後出しじゃんけんだよなあ
そして偉そうにしてる
だからQは嫌われるのに本人は気づいていないという
0752デフォルトの名無しさん
2012/09/27(木) 13:30:53.940753デフォルトの名無しさん
2012/09/27(木) 13:46:09.68>>621はこれで自分がバカだとわかるか?
http://codepad.org/0uzeEu8B
結果:
0: 11177
1: 11172
2: 11158
3: 11144
4: 11144
5: 11158
6: 11172
だめなんじゃない? w
0754デフォルトの名無しさん
2012/09/27(木) 16:47:48.51/∵∴∵∴\
/∵∴∵∴∵∴\
/∵∴∴,(・)(・)∴|
|∵∵/ ○ \|
|∵ / 三 | 三 | / ̄ ̄ ̄ ̄ ̄
|∵ | __|__ | < うるせー馬鹿!
\| \_/ / \_____
\____/
0755デフォルトの名無しさん
2012/09/27(木) 16:54:13.550756745
2012/09/27(木) 18:14:36.24>745では捨てる値が多く、パフォーマンスが宜しくない。
そこでそれを改善するために色々考えるわけだが、そのとき気をつけるのは5の冪は7では割り切れないこと。
>745の場合で7以上の値を捨てずに7の剰余を求めた場合を見てみよう。
この場合、生成される値のばらつきは次のようになる。
--
1 2 3 4 5 6 7
4 4 4 4 3 3 3
--
従って、>745の方針だけでは何回rand5()を呼び出そうとも得られた値の7の剰余を求めただけでは偏りが出てしまう。
実用的には数回呼ぶ程度でも充分だが、>599のような問題の回答としては巧くないだろう。
>745の場合は2回呼んで7以上を捨てているが、これを21以上を捨てるようにすればずっと改善するだろう。
最終的には、数回呼んだ上で適当な7の倍数以上を捨て、7の剰余を求めるのが無難なところ。
全く捨てないことを目指した結果が>743だと思うが、私なら6回呼んで15624のみを捨てることを選ぶかな。
あー、実装上は0を捨てるだけでいいのだけれど汎用的ではないな。
>>746
>一様分布の和に対して剰余をとったとき、その剰余は(条件付にせよ)一様分布かどうか?
一様分布の和は正規分布と考えていいよね。
その場合、その正規分布に対して充分短い周期となるような剰余をとれば一様分布に近づくでしょ。
でもそれは、一様分布とはいえない。
>>753
なるほど、高々0-28程度でもある程度一様分布に近づいてはいるんだね。
なるほどね。>>685 のときにコードも載っけていくれればよかったのに。
しかし、短いコードの割りには均等だという印象を受ける。rnd5() -> rnd7() への写像としては優秀なほうではないか?
>>709 も頼む。
>>709 に対して >>715 で酷評したが、これはつんでれ、という奴だ。
階乗進法を使うというのは斬新だ。階乗進法なんて10年ぶりに思い出した。
私は主にhttp://toro.2ch.net/test/read.cgi/tech/1342966104/でコードを出してはいるが、こんな、2ch の場末の板でコメントがつくなんて稀有なこと。
>>601 とか >>606 なんて華麗にスルーされちゃってるじゃない。
人のコードを読むなんてモリタポでももらわなきゃやってられないが、>>621 が何か書いたらたぶん私は目を通す。
目を通すだけでなく >>621 が何をしたいのか、もともと足りないくて狂っている脳細胞を駆使して必死になって考えるだろう。
>>715 は 愛と解釈してもらいたい。というか、そう解釈していなかったら、ちょっと鈍いぞ。
私は、>>621が、うらやましい。
0758デフォルトの名無しさん
2012/09/27(木) 20:24:39.30マジきめえ
0759デフォルトの名無しさん
2012/09/27(木) 20:29:23.76ん、確かに >>721 は重篤なミスだ。それはみとめる。
まあ >>756 が
>充分短い周期となるような剰余をとれば一様分布に近づくでしょ。
とこちらで記述しきれなかったアイディアを的確に表現しているから満足だ。思い残すことはない。
いや、 >>709 の評価を誰か頼む。
0761621
2012/09/27(木) 20:46:34.33感動しました。
説明内容に釈然としない箇所がひとつも無い。ぼくにも理解できた(^q^/
痛快です。
一つ一つは、簡単で当たり前な考え方だけど、それ積みあげていったら、
気付いたらrnd7()をも当たり前なこととして導けてしまえる様子に感動しました。
聞いてしまった今ならば簡単な方法に思えるけど、しかし、これを最初に閃けてしまうあなたを尊敬します。
少なくとも自分にはまったく閃けなかった。
どう言葉にすれば良いか分かりませんが、すっきりしました。ピタゴラスイッチを見た時のような気持ちよさというか。
感動してます。ありがとう。
0762デフォルトの名無しさん
2012/09/27(木) 21:20:25.910763デフォルトの名無しさん
2012/09/27(木) 21:31:45.95安倍晋三前総理が自民党総裁に選出され韓国・日本の間で緊張が高まっている。
次の総選挙で自民党が多数党になれば安倍総裁が再び総理の席に座るる可能性が高いためだ。
安倍総裁は過去、総理に就任したときに教育基本法を改正して独島紛争の火種を育てた人だ。
それだけでなく再武装を禁止した平和憲法第9条を改正して集団的自衛権行使のための法律案を用意し、
参議院選挙で惨敗したせいで総理職から退いた人物だ。
最近に入り日本軍慰安婦動員事実を認めた河野談話を廃棄することを主張して「総理就任期間に靖国神社を
参拝しなかったことが痛恨の極み」と話すほど極右指向が強い政治家だ。
彼の著書「美しい国」で韓国を同盟国名簿から除外してしまうほど反大韓民国路線を歩む人物だ。
そのような安倍総裁が総理の席に上がる場合、韓日関係が極度に悪化することは火を見るより明らかなことだ。
そうであるから外交部当局者は緊張感を緩ませてはならない。安倍総裁の指向に沿った対応策を講じなければならない。
韓日関係で主な争点となる独島問題に対しては国際慣例や文献など根拠資料を広範囲に収集して徹底して論理的に対応する
準備をしなければならないだろう。慰安婦問題など過去の歴史に関しても国際人権団体等を通して世論を作り、
被害者の証言と関連資料を発掘する作業に拍車を加えることはもちろんだ。
外交当局は何より最近、尖閣列島紛争などで中日関係が深刻な葛藤局面に入り込んだ状況を十分活用しなければならないだろう。
日本もやはり国際的な孤立を望んではいないためだ。韓・中・日三角構図に南北対峙状況まで考慮した強弱両面戦略が必要だという意味だ。
合理的な路線で実利を取りまとめる外交当局の鋭い洞察力を期待する。
[社説]韓日関係の大荒れを予告する安倍総裁選出(韓国語)
http://news.naver.com/main/read.nhn?mode=LSD&mid=sec&sid1=110&oid=082&aid=0000358763
0764デフォルトの名無しさん
2012/09/27(木) 21:44:44.470765デフォルトの名無しさん
2012/09/27(木) 22:54:33.680766デフォルトの名無しさん
2012/09/28(金) 00:18:12.750767デフォルトの名無しさん
2012/09/28(金) 11:42:13.980768デフォルトの名無しさん
2012/09/28(金) 11:53:38.89しかもダメと指摘受けた後の>>621。
その後の>>704の通り魔発言。
このスレは永久保存だ。
0770デフォルトの名無しさん
2012/09/28(金) 12:35:05.97> ★◆QZaw55cn4cは発言禁止です。トリップを隠してもダメです。
0771745
2012/09/28(金) 13:36:41.78まぁ、>621が納得できたからよかった。
ついでに言えば、>756で書いた「数回呼んだ上で適当な7の倍数以上を捨て、7の剰余を求める」の
一番シンプルな形が>601だね。
>599から7分でこれだけきちんとできるなんて、仮に慣れていたとしてもたいしたもんだ。
0772デフォルトの名無しさん
2012/09/28(金) 13:50:23.270773デフォルトの名無しさん
2012/09/28(金) 13:52:05.310774ニート26
2012/09/28(金) 16:18:47.58C言語を勉強しようと思っています。
速習C言語入門[第2版] ~脳に定着する新メソッドで必ず身につく~ [単行本(ソフトカバー)]
菅原 朋子 (著)
この本マスターすれば、働けますかね?
0775デフォルトの名無しさん
2012/09/28(金) 16:22:54.690776ニート26
2012/09/28(金) 17:01:33.83大変そうですね
でも、雇ってくれるならありがたい
0777デフォルトの名無しさん
2012/09/28(金) 17:03:51.31とりあえずメアドと履歴書いて
0778デフォルトの名無しさん
2012/09/28(金) 17:28:06.52一度やってみなさい
あとそんな質問はプログラマ板へどうぞ
0779デフォルトの名無しさん
2012/09/28(金) 17:28:57.390780デフォルトの名無しさん
2012/09/28(金) 17:38:38.390781デフォルトの名無しさん
2012/09/28(金) 17:45:10.000782デフォルトの名無しさん
2012/09/28(金) 19:27:03.94K&R2を読め話はそれからだ
0783ニート26
2012/09/28(金) 19:52:49.78ポチった
0784デフォルトの名無しさん
2012/09/28(金) 20:05:32.950785デフォルトの名無しさん
2012/09/28(金) 20:52:11.23http://www.amazon.co.jp/dp/4320026926
http://www.amazon.co.jp/gp/aw/d/4320026926
0786デフォルトの名無しさん
2012/09/28(金) 23:05:42.09情報の取得自体は
n = recv(sock, buf, sizeof(buf), 0);
としてバッファに受け取れるのですが、コンソールに表示した場合、一部分だけ文字化けします
具体的には、たとえば2chを読み込むと
<a href="1328344097/l50">726: スレタイA (51フフフフフフフフ・</a>
<a href="1331870803/l50">727: スレタイB</a>
<a href="1321033272/l50">728: スレタイC (91)</a>
というように、スレタイAの一部だけ文字化けします。原因および対策等、教えて頂けないでしょうか。
環境は
Windows7、VisualC++2010です。
0787デフォルトの名無しさん
2012/09/28(金) 23:10:36.78きちんと文字列終端の処理をするか
受け取った文字数だけ表示させればおk
0788はちみつ餃子 ◆8X2XSCHEME
2012/09/28(金) 23:16:05.75表示はどうしてる?
その表示を見ると化けているのではなく余計なものがくっついてるのがわかる。
recv で読み込んだ情報は最後に '\0' を付けてはくれないので printf や puts やらで出力したら
読み込んだ分の最後を越えて表示しようとしてしまう。
0789デフォルトの名無しさん
2012/09/28(金) 23:22:05.13(さらにTCPでHTTPだろうから 行単位(末尾のCRLF)で一気にバッファに詰まるわけではないことに注意だ)
0790デフォルトの名無しさん
2012/09/28(金) 23:30:21.31Cでやんのは自殺行為だwww
2chならshiftjis、0x5cに引っ掛かりまくりでクソの山wwww
おとなしく別の何か使っとけよwww
文字コードのクソ山にCで直接突入とかwww
別の言語使えよwwwww
www
0791デフォルトの名無しさん
2012/09/28(金) 23:32:44.12作った事ない人の発言だね
0792デフォルトの名無しさん
2012/09/28(金) 23:36:41.97>>788
レス有難うございます!
buf[1024];
n = recv(sock, buf, sizeof(buf)-1, 0);
buf[n] = '\0';
としたら文字化けも無くなりました。
recvが終端に\0をつけないということを完全に見落としていました。
有難うございました。
0793デフォルトの名無しさん
2012/09/28(金) 23:45:15.68表 って書いてあるテキストファイルの読み込みすらひっかかってクソの山になる
Cコンパイラを教えてください
0794デフォルトの名無しさん
2012/09/28(金) 23:46:09.99○>>790
0795デフォルトの名無しさん
2012/09/28(金) 23:54:36.62煽るならもっとうまくやれよアフォwww
0796デフォルトの名無しさん
2012/09/29(土) 00:14:11.37何だろ?最初はa〜Z ,+:@&%$みたいな記号しかコンピュータは受け付けなかったんだろ
0797デフォルトの名無しさん
2012/09/29(土) 00:17:06.710798デフォルトの名無しさん
2012/09/29(土) 00:23:55.34Windows以前のコンピュータは漢字打ち込めたの?
CUIで。
0799デフォルトの名無しさん
2012/09/29(土) 00:24:55.03アホはスレタイ読んで消えろ
0800デフォルトの名無しさん
2012/09/29(土) 00:27:48.76C言語はShift-jisと関連あるだろ
何故ダメなんだ?
なぁ?おい?
0801デフォルトの名無しさん
2012/09/29(土) 00:29:15.26何言ってるの?
消えろよ
0802デフォルトの名無しさん
2012/09/29(土) 00:30:37.340803デフォルトの名無しさん
2012/09/29(土) 00:31:23.46お前プログラマーのくせに排他的過ぎw
学生もいること忘れんな
0804デフォルトの名無しさん
2012/09/29(土) 00:36:00.69プログラマーは聖人君子なんだ
そうじゃないやつはプログラマーではない
だからここで質問しようとする人も
聖人君子たろうとするべき
そうじゃないやつはプログラマーでもないし
プログラマーも目指してないから
知る必要もない
0805デフォルトの名無しさん
2012/09/29(土) 00:36:32.14何でこんな関数作ったんだろ。自作できるじゃん。
0806デフォルトの名無しさん
2012/09/29(土) 00:38:07.06オメーg成人君子な証拠見せろよヴァk
アホグラマ程度ののーみそだろw
0807デフォルトの名無しさん
2012/09/29(土) 00:38:31.610808デフォルトの名無しさん
2012/09/29(土) 00:38:42.37これ
void komojiwooomojinihenkan(char cha)
{
if(cha==a)cha=='A'
以下同文
}
でいいじゃん。tolowerって機能少なすぎ。何なんだ。
こんな関数必要ないじゃん。
0809デフォルトの名無しさん
2012/09/29(土) 00:41:20.51お前の中ではな
0810デフォルトの名無しさん
2012/09/29(土) 00:41:22.61ntohsなど環境によっては変化のないものもあるけど、意味はあるわけだ
0811デフォルトの名無しさん
2012/09/29(土) 00:43:25.150812デフォルトの名無しさん
2012/09/29(土) 00:44:01.58これも全然分からない
絶対値を求めるってそもそも絶対値自体数理的なものでコンピュータなら
ではなの概念じゃないよね
void puramaigyakuten(int a)
{
a=-a;
}
でいいじゃん。
0813デフォルトの名無しさん
2012/09/29(土) 00:44:06.430814デフォルトの名無しさん
2012/09/29(土) 00:47:41.10absとそのコード、何の関係があるわけ?
0815デフォルトの名無しさん
2012/09/29(土) 00:50:10.31じゃあ
absが便利な時あるの?
今まで総計10万行近くのプログラム書いてきたけど
この関数だけは何の役にも立ってないだわ
0816デフォルトの名無しさん
2012/09/29(土) 00:51:10.84察してやれよ
0817デフォルトの名無しさん
2012/09/29(土) 00:51:47.010818デフォルトの名無しさん
2012/09/29(土) 00:52:14.47何もかもが嘘だな
役に立たないのはお前
むしろ足を引っ張るからいないほうがいいレベル
0819デフォルトの名無しさん
2012/09/29(土) 00:56:42.13あんまキツイ事言わないでよ
>>817
とりあえずC言語は数学関連のいらない関数が多すぎ
もっとさ、便利な機能作れよな(笑)
0820デフォルトの名無しさん
2012/09/29(土) 00:57:44.50ABSとそのコードの関係性を聞いてるんだが?
0821デフォルトの名無しさん
2012/09/29(土) 01:00:41.430822デフォルトの名無しさん
2012/09/29(土) 01:04:38.56数値計算やっていると、しばしばひつようになるんだよ。
0823デフォルトの名無しさん
2012/09/29(土) 01:05:22.58だから絶対値ってことはマイナスの値がプラスの値になっちゃうわけだからこれでいいじゃん
int i;
i = 5 - 8;
if (i < 0)
{
puramaigyakuten(i);
}
0824デフォルトの名無しさん
2012/09/29(土) 01:07:14.680825デフォルトの名無しさん
2012/09/29(土) 01:07:28.430826デフォルトの名無しさん
2012/09/29(土) 01:09:27.59結果的に馬鹿だとしても、馬鹿だったとわかるんだからいい事だ
まわりの人間は迷惑だけどな
0827デフォルトの名無しさん
2012/09/29(土) 01:12:38.95より多くの用途で使うことができる
absは絶対値だからプラスの値にしかならないけど、僕が作った関数はマイナスの値にもできる
マイナスの値にしたいときも同じ関数使うことができる absはもういらない
0828デフォルトの名無しさん
2012/09/29(土) 01:15:04.35という式があったとして
君のくだらない関数を使うときにだらだらifを使い可読性を損なう事に
何の意味があるのかね
0829デフォルトの名無しさん
2012/09/29(土) 01:16:21.90それはプラスの値が欲しいときに条件を限定しているからそうなるけれども
マイナスの値にすることもできるってことに気づいてよ absより高機能だってこと
0830デフォルトの名無しさん
2012/09/29(土) 01:18:59.09もはやそれabsじゃねぇ
しかも>>812のコードは何も起こらないwww
0831デフォルトの名無しさん
2012/09/29(土) 01:19:33.94だからabsいらないよねって話じゃん
*つければいいじゃん
0832デフォルトの名無しさん
2012/09/29(土) 01:19:49.96>absは絶対値だからプラスの値にしかならないけど、
そんなことはない。マイナスのこともある
0833デフォルトの名無しさん
2012/09/29(土) 01:20:53.82うそつき、それ絶対値じゃないよ
0834デフォルトの名無しさん
2012/09/29(土) 01:21:42.900835デフォルトの名無しさん
2012/09/29(土) 01:22:11.640836デフォルトの名無しさん
2012/09/29(土) 01:22:47.28だからマイナスにはならないよ
0837デフォルトの名無しさん
2012/09/29(土) 01:23:56.76を君の高機能な関数で書いてみてよ
0838デフォルトの名無しさん
2012/09/29(土) 01:24:35.34なんでそれが俺へのレスなんだ?ID出ないから面倒だね
0839デフォルトの名無しさん
2012/09/29(土) 01:25:23.40そんなのわかるでしょ
if (b < 0)
{
puramaigyakuten(b);
}
a * b + c;
0840デフォルトの名無しさん
2012/09/29(土) 01:25:48.04消えろよアフォがうつるから
0841デフォルトの名無しさん
2012/09/29(土) 01:26:01.31だからabsはマイナスにはならないってことでいんだよね?
0842デフォルトの名無しさん
2012/09/29(土) 01:27:26.390843デフォルトの名無しさん
2012/09/29(土) 01:28:23.18じゃあ誰に許可取ればいいの?
0844デフォルトの名無しさん
2012/09/29(土) 01:29:28.43変更しちゃいけないって条件の後出しですか?すごい卑怯者ですね、AKBのじゃんけん大会でやらせだったことよりひどいと思いますよ
0845デフォルトの名無しさん
2012/09/29(土) 01:29:48.46>とりあえずC言語は数学関連のいらない関数が多すぎ
ほんとそうだよね超越関数なんてtan(), arctan(), pow(2.0, x) - 1.0, x * log2(y), x * log2(y + 1) だけでいいよね(棒)
0846デフォルトの名無しさん
2012/09/29(土) 01:31:07.07で、そのコードってa * abs(b) + c;
より良い書き方かい?義務教育くらいうけてきた年齢なのかな?
0848デフォルトの名無しさん
2012/09/29(土) 01:37:17.87そのコードってa * abs(b) + c;
より良い書き方か?
0849デフォルトの名無しさん
2012/09/29(土) 01:43:38.840850デフォルトの名無しさん
2012/09/29(土) 01:44:11.490851デフォルトの名無しさん
2012/09/29(土) 01:51:21.17> なにを勝手にbの内容変更してんだよ
後出しで条件つけて偉そうにしてる人さらし上げ
0852デフォルトの名無しさん
2012/09/29(土) 01:54:43.700853デフォルトの名無しさん
2012/09/29(土) 02:01:16.81QZてやつが顔を真っ赤にしてレスしてただけだったじゃん、もしかしてabsに固執している老害っぽい人ってQZなんじゃない
それが面白かったじゃん。なんかMTとか大仰なお道具をふりまわしてさー、普通の線形合同でいいのに馬鹿だよね。
0855デフォルトの名無しさん
2012/09/29(土) 02:10:17.97バカはお前だよw avltreeは実装できたのか?教えてやろうか?
うん、結構苦戦してるんです。
参考にした教科書も間違っているありさまで困っています。よろしくお願いいたします。
0857デフォルトの名無しさん
2012/09/29(土) 02:17:51.26おーよしよし、avlはたぶんアベレージのことだから平均値を求めてなんかすればいんだろ
たとえばa, b, cの3つの数があるとすると、(a + b + c) / 3てゆうふうに3つの数を足して、
3で割れば平均値出るから、これ参考になる?
全然。AVLは人の名前からですよ〜
http://en.wikipedia.org/wiki/AVL_tree
0859デフォルトの名無しさん
2012/09/29(土) 02:21:50.19このとき、任意の実数 ε > 0 に対して、c?>?d?(1+ε)となるような三つ組 (a,b,c) は高々有限個しか存在しない
ってことだよな。
0860デフォルトの名無しさん
2012/09/29(土) 02:28:26.73そう、それ、俺もそれが言いたかった、そういうこと、大体あってる。
>>858
ほいで、いまはどういう実装の仕方してる? 左右の木の高さの差を求めて平衡していないことを調べるやり方と、
左右どちらに傾いているかというラベルを枝に持たせるやり方があるだろ、どっちのやり方でやってる?
0861デフォルトの名無しさん
2012/09/29(土) 03:03:39.02>左右どちらに傾いているかというラベルを枝に持たせるやり方
です。
http://hibari.2ch.net/test/read.cgi/tech/1301553333/520
http://hibari.2ch.net/test/read.cgi/tech/1301553333/629
http://ideone.com/ujGUY
一年以上も前で探すのにちょっと手間取りました。すみません。
0864デフォルトの名無しさん
2012/09/29(土) 03:19:59.57そんな前なのかよ、ちょっとまってろ精査してやんよ
すみません、お願いします。
0866デフォルトの名無しさん
2012/09/29(土) 04:35:56.02なんだ、ほとんどできてんじゃん
一重回転は問題ない
二重回転のところだな
┃if (p2->bal == -1)
┃ (*p)->bal = 1;
┃else
┃ (*p)->bal = 0;
┃if (p2->bal == 1)
┃ p1->bal = 1;
┃else
┃ p1->bal = 0;
p2とpは同じ一番上のノードを指している。
if ((*p)->bal == -1) {
(*p)->left->bal = 0;
(*p)->right->bal = 1;
} else {
(*p)->left->bal = -1;
(*p)->right->bal = 0;
}
こう変えれば完成だな
0867デフォルトの名無しさん
2012/09/29(土) 04:51:41.62の本を読めよな
あ、買う金ないのか
ありがとうございます。調べます。
セジウィック http://www.amazon.co.jp/dp/4764902222
は目次をみるかぎりよさそうですね。赤黒木の分量はどれくらいあります?本命はこちらなんですが手も足もでない。
ご紹介ありがとうございました。
>買う金ないのか
無職説があー広まってますね、例によって肯定も否定もしませんが。
0870デフォルトの名無しさん
2012/09/29(土) 05:49:26.48ロバート・クルーズのは絶版じゃん
ISBN4-89471-331-4
まだISBN4の時の本か
0871デフォルトの名無しさん
2012/09/29(土) 09:40:29.350872デフォルトの名無しさん
2012/09/29(土) 11:47:37.43それじゃだめだよ
0873デフォルトの名無しさん
2012/09/29(土) 12:42:55.970874デフォルトの名無しさん
2012/09/29(土) 13:09:30.220875デフォルトの名無しさん
2012/09/29(土) 13:10:21.30そうだね。バカなんじゃないかな
0876デフォルトの名無しさん
2012/09/29(土) 13:43:21.200877デフォルトの名無しさん
2012/09/29(土) 13:51:04.94発想に乏しい人なんだろうね
0878デフォルトの名無しさん
2012/09/29(土) 13:56:19.09そう考えると昔の言語学者ってバカばっかりなんだろうね
0879デフォルトの名無しさん
2012/09/29(土) 13:59:45.91時代だったんだろうか
0880デフォルトの名無しさん
2012/09/29(土) 14:04:42.490881デフォルトの名無しさん
2012/09/29(土) 14:07:10.63違うか?
0882デフォルトの名無しさん
2012/09/29(土) 14:09:25.740883デフォルトの名無しさん
2012/09/29(土) 14:10:55.830884デフォルトの名無しさん
2012/09/29(土) 14:11:59.91ただ執拗に知識があるやつはキチガイだと思う。
0885デフォルトの名無しさん
2012/09/29(土) 14:14:49.830886デフォルトの名無しさん
2012/09/29(土) 14:25:44.49ビルゲイツとか
スティーブウォズニアックとか
ラリーエリソンとか
ラリーペイジとか
マークザッカーバーグとかかな。
給料低いかね。
0887デフォルトの名無しさん
2012/09/29(土) 14:26:16.86C の文法は単純明快かつ書き手優先だが、後方互換性を確保するために、若干だが理由なく複雑なところがあるからねえ
これは途中から入ってきた者には頭でっかちにみえるんだろう
規格も複雑怪奇というほどでもないので、にわか文法学者が説教を垂れるのに我慢できないわけだ
それはそうと使えば使うほど知恵に磨きがかかるプログラミング言語ってなんだろうね
0888デフォルトの名無しさん
2012/09/29(土) 14:27:53.910889デフォルトの名無しさん
2012/09/29(土) 14:46:17.680890デフォルトの名無しさん
2012/09/29(土) 15:31:23.20これに泣く初心者
0891デフォルトの名無しさん
2012/09/29(土) 15:50:44.290892デフォルトの名無しさん
2012/09/29(土) 17:29:46.17}
0893デフォルトの名無しさん
2012/09/29(土) 17:56:37.77#define TRUE (FALSE == 0)
#include <stdio.h>
int main(void)
{
int result = TRUE;
if(result) {
printf("result = %d\n", result);
} else {
puts("Why?");
}
return 0;
}
0894デフォルトの名無しさん
2012/09/29(土) 18:07:05.61でいいんだけど問題はソコジャナイからね
0895デフォルトの名無しさん
2012/09/29(土) 18:28:26.63>#define !0
へ?
0896デフォルトの名無しさん
2012/09/29(土) 19:19:55.010897デフォルトの名無しさん
2012/09/29(土) 20:02:25.791じゃダメなんでしょうか?
文字列終端は'\0'であって0じゃないみたいなもの…、じゃないんだろうなw
0898デフォルトの名無しさん
2012/09/29(土) 20:13:25.84ただ、見た目的にちょっぴりエレガントさを求める人は
#define FALSE 0
#define TRUE !FALSE
みたいにする場合がある。
0899897
2012/09/29(土) 21:20:09.06と思って確認してみましたが以下の検証ソースだと
即値の1(be01000000 mov esi,00000001)を使いまわしてました。
コンパイラと最適化具合によるのでしょうけどね。
#include <stdio.h>
int main(void){
char *mejirusi;
int i;
printf("inputDec >"); scanf("%d", &i);
mejirusi = "tes1:if(i == 1)";
if(i == 1)mejirusi="tes1:true";
printf("%s\n", mejirusi);
mejirusi = "tes2:if(i == !0)";
if(i == !0)mejirusi="tes2:true";
printf("%s\n", mejirusi);
mejirusi = "tes3:if(i != 1)";
if(i != 1)mejirusi="tes3:true";
printf("%s\n", mejirusi);
mejirusi = "tes4:if(i != !0)";
if(i != !0)mejirusi="tes4:true";
printf("%s\n", mejirusi);
return 0;
}
※scanfなど使用せずint i=1;で固定の初期化をするとiが1の場合のcmpが無いコードが出力されました。
最適化されるんだなぁと思った次第です。
0900デフォルトの名無しさん
2012/09/29(土) 21:35:41.630以外が真
0901デフォルトの名無しさん
2012/09/29(土) 21:51:10.370902デフォルトの名無しさん
2012/09/29(土) 21:52:05.730903デフォルトの名無しさん
2012/09/29(土) 22:03:56.350904デフォルトの名無しさん
2012/09/29(土) 22:04:51.61ってNが何の変数か分からないのに定義したって意味ないだろ。
こういう所がCの適当なところだよ。氏ね。
0905デフォルトの名無しさん
2012/09/29(土) 22:06:05.020906デフォルトの名無しさん
2012/09/29(土) 22:08:21.49頭が悪すぎて本当にかわいそう
0907デフォルトの名無しさん
2012/09/29(土) 22:13:42.390908デフォルトの名無しさん
2012/09/29(土) 22:19:46.39乱数
webときて
お次はクソ心理知か
なるほど手札が尽きないと見える
すばらしい
こういう糞なノウハウだけが溜まりにたまって
ゲロを吐きだしてるさいふうだろ
クセぇから他でやれよ
お前のtwitterでゴボゴボ吐いてろ
0909デフォルトの名無しさん
2012/09/29(土) 22:21:37.370910デフォルトの名無しさん
2012/09/29(土) 22:23:53.700911デフォルトの名無しさん
2012/09/29(土) 22:40:48.99putcharはputchar('文字')の理由は何故ですか?
putcharは二番煎じ関数なのでしょうか?
0912デフォルトの名無しさん
2012/09/29(土) 22:44:13.540913デフォルトの名無しさん
2012/09/29(土) 22:46:48.77のほうが分かりやすいだろ
”ついてんだから
日本語のレトリックからやり直せアホ
その手の知能低い頭で考えてもなおさら分からネーヨ(プ
0914デフォルトの名無しさん
2012/09/29(土) 22:53:49.90J( 'ー`)し タケシ、パソコンのベンキョウ頑張ってるなー。いい仕事が見つかるといいねー。
カーチャンも頑張らなきゃ。
(`Д) ・・・・(パソコンの勉強か、そのうちやるよ。今、ギルドの幹部になっちまって忙しい)
J( 'ー`)し タケシ、カーチャン、ちょっと疲れた。肩を揉んでほしい
(`Д) 今、ベンキョウで忙しいんだよ
J( 'ー`)し タケシ、ガンバッテルナー。カーチャン、嬉しい。いい仕事が見つかって、優しい彼女も
できるよ。
カーチャンの入院
J( 'ー`)し 病院まで10kmもあるのに自転車で見舞いに来るなんて、タケシは親孝行だね。
パソコン頑張ってるから、自動車も買えるようになるよ。
('A`) ・・・・(カーチャン、俺ホントはゲームしかしてないんだよ。)
0915デフォルトの名無しさん
2012/09/29(土) 22:56:58.03こうなる前に大手に内定もらえた俺は親孝行もんだな
0916デフォルトの名無しさん
2012/09/29(土) 22:57:07.51一応マジレスしておく。
文字の出力関数→putchar('a')
文字列の出力関数(但し改行文字も出力する)→puts("a")
成形済み文字列の出力関数→printf("%c", 'a) or printf("%s", "a")
printf()の第一引き数はフォーマット指定文字列なので、そこに出力文字を直接書くのは(馴れない内は)止めた方がいい。
0917デフォルトの名無しさん
2012/09/29(土) 22:59:18.13アホだろお前
釣りかよ
何この程度で間違えてんだ?
クソかよ
0918デフォルトの名無しさん
2012/09/29(土) 22:59:46.320919デフォルトの名無しさん
2012/09/29(土) 23:06:07.130920デフォルトの名無しさん
2012/09/29(土) 23:06:31.990921デフォルトの名無しさん
2012/09/29(土) 23:08:25.45/∵∴∵∴\
/∵∴∵∴∵∴\
/∵∴∴,(・)(・)∴|
|∵∵/ ○ \|
|∵ / 三 | 三 | / ̄ ̄ ̄ ̄ ̄
|∵ | __|__ | < うるせー馬鹿!
\| \_/ / \_____
\____/
0922デフォルトの名無しさん
2012/09/29(土) 23:11:31.92の格言通りだな
アホが醜態晒して吠える吠える
止まらないケツ屁みたいにくせぇww
0923デフォルトの名無しさん
2012/09/29(土) 23:14:12.740924デフォルトの名無しさん
2012/09/29(土) 23:19:07.42ホントのクズだなwww
まるで自分が悪くないかのように
「小さいミス」とかwwwww
小さいwww
小さいwwww
ちっさいwwwwwwww
自己便護のカマタリで出来てる
ただのアフォ君だろwwwwwww
くっだらねーのは
この程度で間違うテメェーだよテメェーwwwwwwwwww
プゲララララ♪♪♪♪♪♪♪♪
0925デフォルトの名無しさん
2012/09/29(土) 23:23:39.580926デフォルトの名無しさん
2012/09/29(土) 23:44:22.300927デフォルトの名無しさん
2012/09/29(土) 23:54:48.810928uy
2012/09/30(日) 00:11:35.170929デフォルトの名無しさん
2012/09/30(日) 00:15:41.41その選ばれしものたちの頭領こそが
あなた様なのです
0930デフォルトの名無しさん
2012/09/30(日) 00:29:06.48処理
}
これを
if(b == 1){
if( a == x || a == y || a == z ){
処理
}
}
これより綺麗に書くことはできないだろうか
0931デフォルトの名無しさん
2012/09/30(日) 00:33:12.72この手の釣りは幾度となく見たぞ
0932デフォルトの名無しさん
2012/09/30(日) 00:36:50.78それで不可能なものは不可能
0933デフォルトの名無しさん
2012/09/30(日) 00:38:29.41if( a == x ){
処理
}
if( a == y ){
処理
}
if( a == z ){
処理
}
}
0934デフォルトの名無しさん
2012/09/30(日) 00:38:39.97前者のほうが好きだ。
0935デフォルトの名無しさん
2012/09/30(日) 00:40:41.86if( a == x ){
処理
}
}
if(b == 1){
if( a == y ){
処理
}
}
if(b == 1){
if( a == z ){
処理
}
}
0936デフォルトの名無しさん
2012/09/30(日) 00:41:44.640937デフォルトの名無しさん
2012/09/30(日) 00:43:46.710938デフォルトの名無しさん
2012/09/30(日) 00:45:49.47if( a == x ){
if(b == 1){
処理
}
}
}
if(b == 1){
if( a == y ){
if(b == 1){
処理
}
}
}
if(b == 1){
if( a == z ){
if(b == 1){
処理
}
}
}
0939デフォルトの名無しさん
2012/09/30(日) 00:49:20.63論点は綺麗さであって個人的な主観が全て。
0940デフォルトの名無しさん
2012/09/30(日) 01:09:06.88switch(a) {
case x:
case y:
case z:
処理
break;
default:
break;
}
}
0941デフォルトの名無しさん
2012/09/30(日) 01:45:07.00if (b==1&&f(a)){
}
#undef f
0942デフォルトの名無しさん
2012/09/30(日) 01:49:31.96|| a_no_tekisetsuna_meishou == y_no_tekisetsuna_meishou && b_no_tekisetsuna_meishou == 1
|| a_no_tekisetsuna_meishou == z_no_tekisetsuna_meishou && b_no_tekisetsuna_meishou == 1){
処理
}
0943デフォルトの名無しさん
2012/09/30(日) 01:50:57.77|| a_no_tekisetsuna_meishou == y_no_tekisetsuna_meishou && b_no_tekisetsuna_meishou == TEKISETSUNA_MEISHOU_NO_MACRO_1
|| a_no_tekisetsuna_meishou == z_no_tekisetsuna_meishou && b_no_tekisetsuna_meishou == TEKISETSUNA_MEISHOU_NO_MACRO_1){
処理
}
0944デフォルトの名無しさん
2012/09/30(日) 02:04:32.03処理
}
0945デフォルトの名無しさん
2012/09/30(日) 02:55:21.300946デフォルトの名無しさん
2012/09/30(日) 03:07:02.81論外
0947デフォルトの名無しさん
2012/09/30(日) 03:08:10.29ありがとうございました!
0948デフォルトの名無しさん
2012/09/30(日) 03:20:32.230949デフォルトの名無しさん
2012/09/30(日) 03:49:27.700950デフォルトの名無しさん
2012/09/30(日) 07:24:48.97あれこれ処理しつつ出た結果を順次文字列に追加するというのはどう書けばいいでしょうか
最終的な文字数がわからないので配列ではなくポインタで宣言して
char *hoge;
hoge="a";
strcat(hoge,"b");
のようにしたいのですができません
10000をこえることは無さそうなのでchar hoge[10000];
とやってもいいんですが美しくないので・・・
0951デフォルトの名無しさん
2012/09/30(日) 07:31:10.510952デフォルトの名無しさん
2012/09/30(日) 07:32:19.09追加するなら領域は自分で確保しろ
0953デフォルトの名無しさん
2012/09/30(日) 07:36:22.630954デフォルトの名無しさん
2012/09/30(日) 07:37:46.46メモリに何が入ってるかわからない状態で後ろにどんどん追加していくのが不可能だと気づくだろう
0955デフォルトの名無しさん
2012/09/30(日) 07:37:58.500956デフォルトの名無しさん
2012/09/30(日) 07:39:45.21>>> hoge = "a"
>>> hoge += "b"
>>> hoge
'ab'
0957デフォルトの名無しさん
2012/09/30(日) 07:42:17.830958デフォルトの名無しさん
2012/09/30(日) 07:43:15.83いやいや、基本できるだろ。
0959デフォルトの名無しさん
2012/09/30(日) 07:45:59.420960デフォルトの名無しさん
2012/09/30(日) 07:52:54.60char *hoge;時点では領域確保しないでhoge="a";のとき初めて確保するの?
代入した時点で代入された値ぶんだけ格納できる領域に保存してその先頭アドレスを保持するって感じなのかな
C言語むずい
0961デフォルトの名無しさん
2012/09/30(日) 07:54:53.04文字列の結合が
0962デフォルトの名無しさん
2012/09/30(日) 07:57:56.33それならCでもできるよ
0963デフォルトの名無しさん
2012/09/30(日) 07:59:41.35う、うん・・・
0964デフォルトの名無しさん
2012/09/30(日) 08:08:11.250965デフォルトの名無しさん
2012/09/30(日) 08:10:31.740966デフォルトの名無しさん
2012/09/30(日) 10:51:42.30そんな殺人的なことだれが企画した?
行政か。そりゃそうよな。福島から人が、特に子供がいなくなれば、公務員という既得権益が消失するからな‥‥。
現実には、http://fukushima-evacuation-e.blogspot.jp/
(英語でごめん、邦文バージョンは削除されたことからも内容を察してくれ)
0967デフォルトの名無しさん
2012/09/30(日) 12:35:04.91ttp://ideone.com/wXm4L
0968デフォルトの名無しさん
2012/09/30(日) 13:52:31.000969デフォルトの名無しさん
2012/09/30(日) 14:04:01.540970デフォルトの名無しさん
2012/09/30(日) 15:02:28.64良くわからないんだが。
0971デフォルトの名無しさん
2012/09/30(日) 15:06:48.74多くの情報はノウハウとなりうる
0972デフォルトの名無しさん
2012/09/30(日) 15:10:43.95そだよ
0973デフォルトの名無しさん
2012/09/30(日) 15:22:25.65ついでに言うと
char *s1 = "a";
char *s2 = "a";
としたとき、"a"のアドレスは同じ領域のこともあるし、別々に確保されることもある。
if(s1 == s2)で文字判定できると思って、まれに意図したとおりtrueになることもあるから注意が必要な。
0974デフォルトの名無しさん
2012/09/30(日) 15:31:27.810975デフォルトの名無しさん
2012/09/30(日) 15:47:34.94変数と実体は一致してないと意味ないだろ。
0976デフォルトの名無しさん
2012/09/30(日) 15:53:00.58>ポインタって何のためにあるのか分からない。
malloc()/free()、それから関数ポインタのためだ
それ以外に使う奴はそちらのほうがどうかしている
>変数と実体は一致してないと意味ないだろ。
最初は存在しない実体にたいしてはどうする?
0977デフォルトの名無しさん
2012/09/30(日) 15:55:13.63ってした時"hoge"がヒープ領域に作られて、その先頭アドレスがスタックにつまれるんじゃないっけ
0978デフォルトの名無しさん
2012/09/30(日) 15:57:21.63おまえ、とりあえず聞いたことがある単語を並べてみただけだろ?
0979デフォルトの名無しさん
2012/09/30(日) 15:59:03.07違うのか?
じゃあ、説明よろ
0980デフォルトの名無しさん
2012/09/30(日) 16:00:37.82実体のアドレスを格納する変数だよ
0981デフォルトの名無しさん
2012/09/30(日) 16:03:30.22"hoge"はコンパイル時またはリンク時にそのための領域が作成され格納される
つまり"hoge"はプログラム実行前にプログラム自身にすでにふくまれているのだ
プログラム作成時にアドレスは確定しているから(正確にはプログラムのメモリ展開時だけれどもね)
>char *str = "hoge";
に対応するコードは、そのアドレスをスタック上にある str 変数に対応する領域にコピーする
0982デフォルトの名無しさん
2012/09/30(日) 16:10:07.12データの転送ってメモリから行われるんじゃなくて、HDDから行われるわけ?
良く分からないので教えて下さいませ。
0983デフォルトの名無しさん
2012/09/30(日) 16:14:01.970984デフォルトの名無しさん
2012/09/30(日) 16:17:00.75ありがとー
というかHDDって高速なんですか?メモリのほうが高速と聞きましたが
0985デフォルトの名無しさん
2012/09/30(日) 16:25:50.110986デフォルトの名無しさん
2012/09/30(日) 16:32:55.630987デフォルトの名無しさん
2012/09/30(日) 16:45:26.21いったい誰が名付けたんですか?
0988デフォルトの名無しさん
2012/09/30(日) 16:50:44.44どんだけ英語耐性低いねん
…と釣られてみる
0989デフォルトの名無しさん
2012/09/30(日) 16:55:27.70英語だからではありません
0990デフォルトの名無しさん
2012/09/30(日) 16:59:40.870991デフォルトの名無しさん
2012/09/30(日) 17:13:55.550992デフォルトの名無しさん
2012/09/30(日) 17:14:45.14/ ̄`''''"'x、
,-=''"`i, ,x'''''''v'" ̄`x,__,,,_
__,,/ i! i, ̄\ ` 、
__x-='" | /ヽ /・l, l, \ ヽ
/( 1 i・ ノ く、ノ | i i,
| i, {, ニ , .| | i,
.l, i, } 人 ノヽ | { {
}, '、 T`'''i, `ー" \__,/ .} |
.} , .,'、 }, `ー--ー'''" / } i,
| ,i_,iJ `x, _,,.x=" .| ,}
`" `ー'" iiJi_,ノ
0993デフォルトの名無しさん
2012/09/30(日) 17:31:23.17| ^q^ |
\_/
/ ヽ
| | | |
| | | |
|| ||
し| i |J=二フ
.| ||
| ノ ノ
.| .| (
/ |\.\
し'  ̄
0994デフォルトの名無しさん
2012/09/30(日) 17:36:33.540995デフォルトの名無しさん
2012/09/30(日) 17:37:10.19要素数が絶対に60をこえない配列で
int foo[60]ではなくint foo[64]とする人がよくいるのは気持ちいい悪いの問題?
0996デフォルトの名無しさん
2012/09/30(日) 17:39:49.69それ考えろよ
0997デフォルトの名無しさん
2012/09/30(日) 17:50:57.400998デフォルトの名無しさん
2012/09/30(日) 17:51:30.420999デフォルトの名無しさん
2012/09/30(日) 17:52:05.361000デフォルトの名無しさん
2012/09/30(日) 17:52:32.04出荷した後に、61に拡大しろという追加注文をされる事がままあり、
バイナリーパッチで対応するために、予備領域として64までとっておくという事はあった。
cではなかったけど、たぶんcでも似たようなもんじゃないかと思う。
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。