2ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

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

1 :デフォルトの名無しさん:2011/12/03(土) 07:56:06.20
C言語の*入門者*向け解説スレッドです。

★前スレ
C言語なら俺に聞け(入門編)Part 92
http://hibari.2ch.net/test/read.cgi/tech/1320933306/
★過去スレ
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++の宿題片付けます 154代目
http://hibari.2ch.net/test/read.cgi/tech/1322562648/
★C++言語については避けてください。C++対応明記スレへどうぞ
★分からない事をなるべく詳しく書いて下さい。
★ソースコードを晒すと答えやすくなるかもしれません。
  # 抜粋/整形厳禁、コンパイラに渡したソースをそのまま貼ること
  # サイズが大きい場合は宿題スレのアップローダ等を利用してください
★開発環境や動作環境も晒すと答えが早いかもしれません。
★質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。

長くなりそうなコードはcodepadに貼り付けてもいいでしょう
http://codepad.org/

2 :デフォルトの名無しさん:2011/12/03(土) 08:42:54.22
すまない。1から22までの階乗を表示しろ
という課題なのだ。通信講座で、正直理解しないでやってる事が多い。
超初歩的なミス等があると思うので探して欲しい。
ちなみに今自分が理解していないと痛感している部分は、
ループ変数を関数に渡す という作業だと思う。
なのでその辺をざっくり教えて頂けるとありがたい。
諸事情で通信講座先の先生には聞くことができないのだ。
頼れる人が居なくて困っている。
暇な人がいたら返答よろしく頼みたい


#include<stdio.h>
double dr;
double ko = 0;
double hu(double ji)
{
ko = ko + ji * dr;
return ko;
}
void main()
{
double se;
se = 22;
for(se =0;se > 0; se--);
{
se = hu(se);
printf("%d\n",hu);
}
}


3 :デフォルトの名無しさん:2011/12/03(土) 09:56:28.83
>>2
とりあえず突っ込みたいのは
なんで型をdoubleにしてるのか
seに22を代入してるのにすぐ直後のfor文で0を代入してるのはなぜか
for文のあとに;つけてると駄目だとか
drはmain内で使わないのか
そもそも動かしてみたのか
パッと見で気がついたのはこれぐらいか

4 :デフォルトの名無しさん:2011/12/03(土) 10:21:42.63
>>2
3を踏まえた上でさらに突っ込みたいのがもう一点
ループの中で関数huへのポインタをprintfで出力しているがそれは何の意味があるのか
俺がパッと見で気がついたのはこれぐらいか

5 :デフォルトの名無しさん:2011/12/03(土) 10:54:37.56
>>2
お前の中の階乗ってのはどういう計算なんだ?

6 :977:2011/12/03(土) 11:09:35.87
>>2
なんで偉そうなの?
ググればいくらでも出てくるようなしょべえ課題じゃん

7 :デフォルトの名無しさん:2011/12/03(土) 12:38:04.31
型がdoubleなのは22の階乗はintじゃオーバーフローするからだろ

8 :デフォルトの名無しさん:2011/12/03(土) 12:58:55.71
http://codepad.org/B50qjioM

9 :デフォルトの名無しさん:2011/12/03(土) 13:18:59.57
>>8
美しいな

10 :デフォルトの名無しさん:2011/12/03(土) 13:31:29.03
無駄を省いてすっきりしたコードになってるな

11 :デフォルトの名無しさん:2011/12/03(土) 13:32:50.64
こんなのろまなコードは使いものにならないね

12 :デフォルトの名無しさん:2011/12/03(土) 13:35:33.21
>>11
何に使うつもなんだ?

13 :デフォルトの名無しさん:2011/12/03(土) 13:39:57.19
>>12
物理の数値計算で

14 :デフォルトの名無しさん:2011/12/03(土) 13:49:38.43
http://codepad.org/xNUNQgCD

15 :デフォルトの名無しさん:2011/12/03(土) 13:56:55.86
>>14
そのres *= 10とかは全部res *= iでいいな。

16 :デフォルトの名無しさん:2011/12/03(土) 13:58:57.12
2です みんな親切にありがとう!
高圧的な文章になってたみたいですみません
参考になります!

17 :デフォルトの名無しさん:2011/12/03(土) 13:59:21.83
>>15
すごいバカが来たw

18 :デフォルトの名無しさん:2011/12/03(土) 14:03:15.96
>>15
breakのないswitch書きたくなっただけだからさあ

19 :デフォルトの名無しさん:2011/12/03(土) 14:04:38.16
i-- と言えばよかったのに

20 :デフォルトの名無しさん:2011/12/03(土) 14:17:30.29
>>17
自己紹介乙。

21 :デフォルトの名無しさん:2011/12/03(土) 14:27:50.06
>>20

22 :デフォルトの名無しさん:2011/12/03(土) 14:36:18.65
ここまでおれのじえん

23 :デフォルトの名無しさん:2011/12/03(土) 14:39:04.08
>>14のコードでres * =iにしたら、階乗じゃなくてiのi-1乗になるな

24 :デフォルトの名無しさん:2011/12/03(土) 14:40:48.05
caseラベルと同じ値なのにか。

25 :デフォルトの名無しさん:2011/12/03(土) 14:44:13.42
>>24
お前はcaseを何だと思ってるんだ

26 :デフォルトの名無しさん:2011/12/03(土) 14:56:22.13
Wikiでここの住民が手分けして規格を翻訳したら何かに抵触します?

27 :デフォルトの名無しさん:2011/12/03(土) 15:00:53.57
ここの住民w
やりたきゃお前一人でやれよw

28 :デフォルトの名無しさん:2011/12/03(土) 15:32:17.72
>>26
著作権関連をクリアしないと

29 :デフォルトの名無しさん:2011/12/03(土) 15:51:55.10
>>28
やはり著作権に抵触しますか。
自分はTOEIC600点程度ですが微力ながら貢献できるかなとは思ったのですが。

30 :デフォルトの名無しさん:2011/12/03(土) 20:31:45.42
「公式な翻訳」と名乗らなければおk

規格を読んで理解した人が、
その理解に基づいて「私見を述べる」ことまで
誰かに許可を得る必要はない

# JIS があるのを知らないウルトラ情弱か
# 買えない乞食かはともかく

31 :デフォルトの名無しさん:2011/12/03(土) 20:38:42.74
翻訳権というのがあるので単に翻訳しただけのものはNGだけどな。

32 :デフォルトの名無しさん:2011/12/03(土) 20:40:47.06
P2Pでながせばおk

33 :デフォルトの名無しさん:2011/12/03(土) 21:39:12.27
規格自体に著作件あるの?

34 :デフォルトの名無しさん:2011/12/03(土) 21:55:22.25
>>30
JISって今、環境によって読めないから、それじゃね?
原因は分らんが俺も読めん
AdobeReaderは過去バージョンとかも試したのだが…

35 :デフォルトの名無しさん:2011/12/03(土) 22:15:33.76
>>33
JIS は規格文に著作権があると言い張っているが、手続上は公文書のはずなので法的な根拠は希薄というのが結論。
最終的には裁判所で争ってみないとわからない。
が、たぶん明確に争われたことは無い。
これって JIS 側にとっても裁判にしちゃうのはリスクがあるから小規模に複製することまでは訴えないと思う。
もしも裁判の結果で明確に著作権が認められないことになっちゃうと今の体制も否定されることになるわけだから。

ISO は規格に著作権を認めることを要求してる。
法律が国際条約と衝突する場合は国際条約が優先するものだけど、
ISO は単なる民間組織なのでたぶん日本国内でどこまで言えるものなのかはよくわかんないな。

36 :デフォルトの名無しさん:2011/12/03(土) 22:33:04.26
著作権とかめんどくせーな
そのうち足し算にも権利があるとかいいはじめるぞあの糞ども
すべてフリーにしろフリー&オープンが唯一絶対の答えなのだ

37 :デフォルトの名無しさん:2011/12/03(土) 22:42:48.98
アホっぽいな。

38 :デフォルトの名無しさん:2011/12/03(土) 22:44:04.51
著作権法
第十条  この法律にいう著作物を例示すると、おおむね次のとおりである。
(中略)
九  プログラムの著作物

3  第一項第九号に掲げる著作物に対するこの法律による保護は、
その著作物を作成するために用いるプログラム言語、規約及び解法に及ばない。

ざっと読んだ限りでは規格自体に著作権があるかどうかは明記されてないっぽい。
仮に規格自体に著作権が認められたとしても、保護されないだろうけど。

39 :デフォルトの名無しさん:2011/12/04(日) 06:16:01.50
int v;

40 :デフォルトの名無しさん:2011/12/04(日) 09:12:22.15
そういえば、プログラムに著作権があるかどうかもめていた時代があったものだな

41 :デフォルトの名無しさん:2011/12/04(日) 09:27:14.75
総当たりでバイト列生成して公開し続けるシステムを作ったら権利を独り占め出来るんですか?

42 :デフォルトの名無しさん:2011/12/04(日) 09:52:30.61
もじれつ[5]={なると、たにし、まんぽ、うんこ、ぬるぽ};



43 : ◆QZaw55cn4c :2011/12/04(日) 09:56:42.91
>>41
残念。
それはすでに 1726-1735 に希代の天才によって考案されており、特許法29-1「特許出願前に日本国内又は外国において公然知られた発明」にあたり権利は発生しないだろう。
http://ja.wikipedia.org/wiki/%E3%82%B6%E3%83%BB%E3%82%A8%E3%83%B3%E3%82%B8%E3%83%B3

44 :デフォルトの名無しさん:2011/12/04(日) 10:03:00.52
そのシステムに対する権利は発生しなくても
生成物であるあらゆるバイト列については権利が発生するのでは?
公然と知られた発明によって作られたデータに権利がないと仮にするのなら
オープンソースのアプリで描いた絵にも著作権が無いということになる


45 :デフォルトの名無しさん:2011/12/04(日) 10:15:01.41
権利が発生するとしたら、その生成物であるバイト列に価値があると認められた時

46 :デフォルトの名無しさん:2011/12/04(日) 10:39:59.55
C言語の暗黙の型変換に関して
代入や関数の引数へ渡すときに起きると思いますが
比較演算子の比較ときも同様に起きるのでしょうか?
また、swtich文のcaseに指定したときも起きるのでしょうか?
例)
long a;
short b;
switch(a){
case b: /* bはlongに変換されてaと比較される? */
・・・

47 :デフォルトの名無しさん:2011/12/04(日) 10:55:12.82
>>46
caseで使えるのは、定数

48 :デフォルトの名無しさん:2011/12/04(日) 11:01:06.93
>>47
おお、すみません失念してました 例を変えます
long a;
switch(a){
case 0x01: /* 0x01はlongに変換されてaと比較される? */
・・・

49 :デフォルトの名無しさん:2011/12/04(日) 11:32:00.72
されません


50 :デフォルトの名無しさん:2011/12/04(日) 11:53:49.40
なんとなくのサンプルコードを書いてみて
switchでの比較も 暗黙の型変換の対象になっていそう
と判断しました
http://codepad.org/zc7qtuO8
もしご存知の方がいたらこれが規格どおりなのか、未定義の動作なのか知りたいです

51 :デフォルトの名無しさん:2011/12/04(日) 12:01:42.52
自分で調べられましたので勝手ですが結果を書いておきます
引用元:JIS X3010
6.8.4.2 switch 文
制御式に対して整数拡張を行う。各case ラベルの定数式を制御式の拡張後の型に型変換する。型変換
した値が拡張した制御式の値と一致する場合,制御はその一致したcase ラベルの直後の文に移る。

>>48の例でいうならやはりlongに変換されるようでした

52 :デフォルトの名無しさん:2011/12/04(日) 12:17:03.32
その解釈なら double でもいけることになってしまう

53 :デフォルトの名無しさん:2011/12/04(日) 12:33:47.69
>>52
> 整数拡張を行う

54 :デフォルトの名無しさん:2011/12/04(日) 15:32:32.35
c言語の復習で、ポインタを使って関数にアドレス送って値入れるっていうプログラムを作ったのですが
セグメンテーションエラーになります。
どこが間違ってるのか分かりません。
回答お願いします。


#include <stdio.h>
void kansu(double *ratio2);
int main(void)
{
double *ratio;
kansu(ratio);
printf("%p\n", ratio);
printf("%f\n", *ratio);

return 0;
}

void kansu(double *ratio2)
{
*ratio2 = 3;
printf("%p\n", ratio2);
printf("%f\n", *ratio2);
}


55 :デフォルトの名無しさん:2011/12/04(日) 15:40:36.70
int main(void)
{
double ratio;
kansu(&ratio);

56 :デフォルトの名無しさん:2011/12/04(日) 15:41:06.84
> double *ratio;

ポインタを初期化してない。
ていうかポインタだけ用意してて実体がない。



57 :デフォルトの名無しさん:2011/12/04(日) 15:47:24.59
>>55-56
あ、できました。
確かにmainでポインタにする意味がないですね

もう少し勉強しますありがとうございます

58 :デフォルトの名無しさん:2011/12/04(日) 15:52:41.43
昔、zdnetの記者が知ったかぶりでポインタの解説記事を書いて、間違いを読者に指摘されて赤っ恥かいたことがある。
何が言いたいかって、要するにポインタなんて理解してなくてもプログラムを作れるから問題ないってことさ。

59 :デフォルトの名無しさん:2011/12/04(日) 15:55:37.01
全部グローバル変数にすれば、おk

60 : ◆QZaw55cn4c :2011/12/04(日) 16:05:07.08
>>58
http://builder.japan.zdnet.com/script/sp_c-programming-language/20370255/
エピさんはc++の人だとおもってましたが、大奮闘です。

61 :デフォルトの名無しさん:2011/12/04(日) 16:09:56.77
実際さ、ポインタのない言語で
void get2refs(int** a, int** b);
みたいに参照を2つ受け取りたいときってどうすんの?Javaとかみたいに。
戻り値だと1個しか受け取れないし、グローバル変数使うとマルチスレッドで困るし。
わざわざ専用の構造体作るのかな?

62 :デフォルトの名無しさん:2011/12/04(日) 16:29:32.69
>>61
スレ違い。

63 :デフォルトの名無しさん:2011/12/04(日) 16:32:19.89

ポインタ使わないでするにはどうしたらいいか?で、C言語の質問

64 : ◆QZaw55cn4c :2011/12/04(日) 16:35:06.55
>>61
参照を使います。

65 :デフォルトの名無しさん:2011/12/04(日) 16:53:58.13
>>60
それ以外にもなんかおっさんが暴れ狂ってるやつがあったように思う

66 :デフォルトの名無しさん:2011/12/04(日) 17:01:20.75
>>63
あんたは文盲か?

67 :デフォルトの名無しさん:2011/12/04(日) 17:32:22.01
>61
perlはreturn に値2つ記述できると思った。
あとは別スレ行ってね。

68 :デフォルトの名無しさん:2011/12/04(日) 17:50:53.91
構造体を返すのが一番良さそうだ

69 :デフォルトの名無しさん:2011/12/04(日) 19:36:14.30
文字列を入力して、その中のスペースの数を返すプログラムを書きたいのですが、
スペースをどうやって判定すればいいかわかりません。
if文では無理なのでしょうか?↓現状


#include <stdio.h>
int countSpaces(char str[],int size){
int b=0;
int i;
for(i=0;i<size;i=i+1){
if(str[i]==''){
b=b+1;
}
}
return b;
}
int main(void){
char a[100],c;
int j;
printf("英語の文字列を入力:");
for(j=0;j<99;j=j+1){
scanf("%c",&a[j]);
if(a[j]=='\n'){
break;
}
}
a[j]='\0';
printf("スペースの数は%sです。\n",countSpaces(&a[0],100));
return 0;
}

70 :デフォルトの名無しさん:2011/12/04(日) 19:39:57.35
スペースの数は%sです
スペースの数は%sです
スペースの数は%sです
スペースの数は%sです
スペースの数は%sです
スペースの数は%sです
スペースの数は%sです
スペースの数は%sです


71 :デフォルトの名無しさん:2011/12/04(日) 19:41:32.06
>>69
スペースをどこまでスペースとして判断するか(半角とか全角とかタブとか)である程度変わると思うが
文字コードで判定すればいいんじゃない?

72 :デフォルトの名無しさん:2011/12/04(日) 19:43:19.43
おっと、ありがとうございます!
%dですね。

73 :デフォルトの名無しさん:2011/12/04(日) 19:47:46.54
>>69
if(str[i]==''){

if(str[i] == ' '){ でいいと思うが。

て言うか、なにで開発してるのよ。

Visual Studio だと

c:\documents and settings\xxxx\my documents\temp\test\test\main.cpp(6): error C2137: 空の文字定数

って言われるんだが。

74 :デフォルトの名無しさん:2011/12/04(日) 20:47:22.78
スペースは見落としやすい( >>73 が指摘してるみたいに
抜けてても気づきにくい)ので、自分なら、

if(str[i]=='\x20'){

ってするけどな。


75 :デフォルトの名無しさん:2011/12/04(日) 20:49:18.80
isspace使おうぜ

76 :デフォルトの名無しさん:2011/12/04(日) 21:16:57.47
isspacea()だと、タブとかも含まれるし、
scanf は改行も読んじゃうから、全部カウントされちゃうよ。

77 :デフォルトの名無しさん:2011/12/04(日) 21:20:17.45
別にいいじゃないかそれで
スペースは'\x20'に限るという仕様でもないんだろ?

78 :デフォルトの名無しさん:2011/12/04(日) 21:32:55.95
この場合は、そう考えるのが正常なのか・・・

79 :デフォルトの名無しさん:2011/12/04(日) 22:39:32.46
タブはともかく、改行をカウントしちゃうのはどうなのかなぁ?
やっぱり単にスペースと言うと \x20 限定だと思うし。

80 :デフォルトの名無しさん:2011/12/04(日) 22:46:18.59
0x20

81 :デフォルトの名無しさん:2011/12/04(日) 22:48:19.50
ぽ0

82 :デフォルトの名無しさん:2011/12/04(日) 23:37:31.02
ホワイトスペース

83 :デフォルトの名無しさん:2011/12/04(日) 23:58:14.45
プリプロセッサで下記のような置換をしたいのですができますか?



T(value) -> value, value,
任意の数のvalueに置換

84 :デフォルトの名無しさん:2011/12/05(月) 00:05:40.94
#include <stdio.h>

#define T(value) value, value
main(){
printf("%d %d", T(123));
}

たまにこんな感じのマクロ見かけると悪意しか感じないわ。

85 :デフォルトの名無しさん:2011/12/05(月) 00:23:21.35
これが反日マスコミの編集による矮小化
176 :七つの海の名無しさん:2011/11/17(木) 21:57:56.45 ID:gClQt5ed
【重要】 ブータン国王の演説の報道は、重要な部分がことごとく反日マスコミにカットされて報道されています

「世界史において、かくも傑出し、重要性を持つ機関である日本国、(その)国会の中で、」 →★全部カット

「ブータン国民は、常に、日本に、強い、愛着の心を持ち、何十年もの間、偉大な日本の成功を →★全部カット
心情的に分かち合ってきました。」

「日本は、当時外国の領地(植民地)であったアジアに、自信とその進むべき道への自覚をもたらし
以降、日本のあとに続いて世界経済の最前線に躍り出た数多くの(アジアの)国々に希望を与えてきました」 →★全部カット

「日本は、過去においても、現代においても、世界のリーダーであり続けます」 
「このグローバル化した世界において、日本は、技術と革新の力、勤勉さと責務、強固な伝統的な価値における模範
であり、これまで以上にリーダーにふさわしいのです。」 →★全部カット

「世界は、常に、日本のことを、大変な名誉と誇り、そして規律を重んじる国民、歴史に裏打ちされた誇り高き伝統を持つ国民、
不屈の精神、断固たる決意、そして秀でることに願望を持って、何事にも取り組む国民、知行合一、兄弟愛や友人、
ゆるぎない強さと気丈さを併せ持つ国民、であると認識してまいりました」 →★全部カット

「他の国であれば、国家を打ちのめし、国家を打ち砕き、無秩序、大混乱、そして悲嘆をもたらしたであろう事態に
日本国民の皆様は、最悪の状況下でさえ、静かな尊厳、自信、規律、ここの強さを以って、対処されました」 →★全部カット

他にもカットシーンがたくさんあるので、ブータン国王の演説 でyoutube検索してください


86 :デフォルトの名無しさん:2011/12/05(月) 03:37:24.92
>>74
if(str[i]==0x20){
ってすることはよくあるなぁ

87 :デフォルトの名無しさん:2011/12/05(月) 07:16:37.34
int b;

88 :デフォルトの名無しさん:2011/12/05(月) 09:56:07.29
配列のインデックスに負の値を使う意味ってある?
cに関してはググってもでてこない
アドレスは配列の先頭の一つ前を指してる事は分かったのだが

89 :デフォルトの名無しさん:2011/12/05(月) 10:07:49.42
int n;

90 :デフォルトの名無しさん:2011/12/05(月) 10:11:09.76
(´・ω・`)

91 :デフォルトの名無しさん:2011/12/05(月) 10:45:08.91
>>88
例えば-1を特別扱いしないために配列top+1のアドレス相対で使うことはないこともない。
int a[100], *p = a + 1; x = p[-1];

92 :デフォルトの名無しさん:2011/12/05(月) 11:11:25.21
a[-1]のつもりがa[0xFFFFFFFF]にアクセスしてたあの青春の1ページ


93 :デフォルトの名無しさん:2011/12/05(月) 11:23:06.73
ポインタが64bitの環境でか。
まぁそんな環境じゃぁポインタ使うほとんどのプログラムは動かないだろうw

94 :デフォルトの名無しさん:2011/12/05(月) 11:28:05.37
CPUが8086とかのころ、わざと桁あふれさせてメモリ先頭領域にアクセスしたりしてたな。

95 :デフォルトの名無しさん:2011/12/05(月) 11:34:09.65
してたね。

96 :デフォルトの名無しさん:2011/12/05(月) 11:37:07.83
p[-a];
とはあまり書かないけど
*(p-a);
ならしばしば使うね
というかアドレス計算でシコシコやる時は正だろうが負だろうが[]は使わない
[]を使うのは配列をそのまま要素の集合として扱うときだけ

97 :デフォルトの名無しさん:2011/12/05(月) 12:26:27.61
>>91
納得出来ました
ソースは2つの配列があって、片方の配列の先頭をポインタの頭とした時、もう片方の配列の最後尾をそのポインタの[-1]で指してるような感じでした。
しかし紛らわしい使い方だ・・・

98 :デフォルトの名無しさん:2011/12/05(月) 12:27:27.01
自前でアロケータ書く時とか、解放しようとするブロックのアドレスから
管理情報の位置を特定するために p[-sizeof(HEADER)] みたいな事する。

99 :デフォルトの名無しさん:2011/12/05(月) 12:29:00.12
>>97
コンパイラが空気読まずに配列の間になんか挟んだら終わるな

100 :デフォルトの名無しさん:2011/12/05(月) 19:17:52.41
苦しんで覚えるC言語のサイトから最新のコンパイラ「学習用C言語開発環境」をDLさせていただいたのですが、起動時に "tfb"が定義されていません と表示されます
とりあえず hello waorld を実行してみたところちゃんと実行されました
この tfb とは一体何で、どこから定義すればいいのでしょうか?
お願いします
ちなみにPCのソフトはwindows7です

101 :デフォルトの名無しさん:2011/12/05(月) 19:22:48.48
>>100です
このページでスクリプトエラーが発生しました、という文も一緒に表示されていたので、そちらで検索してみたところ、yahoo知恵袋で「閲覧の履歴を削除してみろ」とあったのでやってみましたが無駄でした
よろしくお願いします

102 :デフォルトの名無しさん:2011/12/05(月) 20:15:06.95
>>100です
すいません自己解決できてかもしれません
ですがまだ良く分からないままなので詳しい方がいらっしゃいましたらお願いします

103 :デフォルトの名無しさん:2011/12/05(月) 20:17:24.37
自己解決できたと思われる内容を書いたほうがいいんじゃないかとも思うけど、スレ違いだしいいや

104 :デフォルトの名無しさん:2011/12/05(月) 22:07:11.18
今日ものすごく大きな運子が出たんですが、
マンコドプロンプトでその形を表現する事は可能でしょうか


105 :デフォルトの名無しさん:2011/12/05(月) 22:13:34.97
たやすいことよ

106 :デフォルトの名無しさん:2011/12/05(月) 22:40:42.36
svgにチャレンジしてください。

107 :デフォルトの名無しさん:2011/12/05(月) 23:32:26.49
>>88
>アドレスは配列の先頭の一つ前を指してる事は分かったのだが

何を見てわかった気になってるのか知らんけど、その動作は保証されないよ。

108 :デフォルトの名無しさん:2011/12/06(火) 10:17:23.49
規格では確か、

int a[N];
int *p = a;

に対して、配列の大きさ+1(p + 0 〜 p + N) 以外は未定義。

int *p = a + 1;

なら、p - 1 〜 p + (N-1) になるのかな。

109 :デフォルトの名無しさん:2011/12/06(火) 11:34:33.41
> 配列の大きさ+1(p + 0 〜 p + N) 以外は未定義。
p + Nの中を見ないならそう。
アドレス演算が有効な範囲だね。

110 :デフォルトの名無しさん :2011/12/06(火) 11:49:21.77
話がC++の話になるけど
STLのイテレータのend()は
そのオブジェクトの最後の要素の
次のアドレスをしめしてるんだよな〜

111 :デフォルトの名無しさん:2011/12/06(火) 12:00:09.95
そうでもない

112 :デフォルトの名無しさん:2011/12/06(火) 12:04:02.91
>>110
それ、STLのコンテナのうち、極一部だけだから。

113 :デフォルトの名無しさん:2011/12/06(火) 12:22:04.03
VBで
ReDim A(N - 1)
For I = 0 To N - 1
と書かなければならないのは苦痛だ

114 :デフォルトの名無しさん:2011/12/06(火) 12:24:18.94
なんでC++やらSTLやらVBやら言い出すバカばかりなのか。

115 :デフォルトの名無しさん:2011/12/06(火) 12:24:24.71
Nのままでいいよ。
どうしても要素が一つ余計なのがいやなら、baseを変更すればいい。

116 :デフォルトの名無しさん:2011/12/06(火) 12:39:09.40
>>113
VBは元々1オリジンだからな
「1 To 個数」で自然な書き方になるようになってた

.NETになったときに0オリジンが基本になったんだっけ?

117 :デフォルトの名無しさん:2011/12/06(火) 14:30:21.76
すみません。
可変長引数が使ってみたくて調べていたのですが、引数の個数を得るのはどうしても不可能な事なのですか?

118 :デフォルトの名無しさん:2011/12/06(火) 14:34:00.52
1つ目の引数で個数を教えればいい。

119 :デフォルトの名無しさん:2011/12/06(火) 14:39:00.02
終端通達用として末尾に NULL を積むという紳士協定を結ぶ (execl 等)

120 :デフォルトの名無しさん:2011/12/06(火) 14:41:02.84
でもそれだと整数の0を渡したい場合にどうするんですか?


121 :デフォルトの名無しさん:2011/12/06(火) 14:45:14.72
execl は "ポインタ" を可変個積む ことに特化してるので区別できてる


(指し示している先に格納されている値が 0)なポインタを積むことにするか
整数値他色々な型を積むことを許したいのなら >>118 の個数(と型)を教える手段を用意する
(printf のフォーマット文字列が ソレに相当)

122 :デフォルトの名無しさん:2011/12/06(火) 14:48:10.71
なるほど


123 :デフォルトの名無しさん:2011/12/06(火) 17:45:02.27
C言語と直接関係ないことかもしれませんが、
自分はブラウザにGoogleChrome使っています。

で検索したページの文字をコピーして別の媒体にペーストしたい場合
GoogleChromeだと、文字を青くマークしてクリックで白欄にそのまま
ドラッグできますよね?

この操作は右クリックをすれば、Windowsのデフォルトのオプションから
コピーを選べば同じ事はできますよね。この操作は一般的に文字列が存在
する場所だと共通でできる事ですよね?

何故Chromeはこの特殊な前記の操作ができるのでしょうか?
こういう技術って何に依存しているんですか?
Cで文字列の勉強をしています。関係があるかなと思って。


124 :デフォルトの名無しさん:2011/12/06(火) 17:49:54.98
OSの機能なので気にしなくて結構です

125 :デフォルトの名無しさん:2011/12/06(火) 17:54:03.44
>>124
クリックしてドラッグってGUI上でのデータ送信ですよね?
こういう機能って自作できるんですか?

126 :デフォルトの名無しさん:2011/12/06(火) 17:56:20.12
できる

127 :デフォルトの名無しさん:2011/12/06(火) 17:57:49.22
標準入力で文字を読み込みたくなくなったらそのモジュールは終了
するようなプログラムってどうしたらいいですか?

int x[10000]
int x
while(1){
scanf("%d",x);
a[i]=x;
i++;
}


128 :デフォルトの名無しさん:2011/12/06(火) 17:58:31.63
>>126
IEはクリックしてドラッグできますか?


129 :デフォルトの名無しさん:2011/12/06(火) 18:01:18.73
>>127
exit()
>>128
できるけど?

130 :デフォルトの名無しさん:2011/12/06(火) 18:05:26.70
OLEの IDropTarget の面倒見るコードを書くって話?

131 :デフォルトの名無しさん:2011/12/06(火) 18:11:47.76
>>129
プログラムを終了じゃなくて、読み込むのを終了したい。

132 :デフォルトの名無しさん:2011/12/06(火) 18:15:45.60
>>127
>文字を読み込みたくなくなった

時の判定を追加して、breakするか、returnする

133 :デフォルトの名無しさん:2011/12/06(火) 18:25:18.48
C言語がサポートしているbyte機構についてですが。

1byteあたり256パターンで、256^6がint型だと思うんですが。
何でintは24億程度しか表わせないんですか?256^6>24億では?

134 :デフォルトの名無しさん:2011/12/06(火) 18:26:46.12
ほうじゃのう

135 :デフォルトの名無しさん:2011/12/06(火) 18:28:23.02
>>133
普通は1byte=8bit、int=4byte=32bit
で、32bitで表現できる範囲は通常2の補数で-2147483648〜2147483647だ。
おk?

136 :デフォルトの名無しさん:2011/12/06(火) 18:28:36.08
マイナスがある

137 :デフォルトの名無しさん:2011/12/06(火) 18:29:14.30
どっから6が出てきたんだよ

138 :デフォルトの名無しさん:2011/12/06(火) 18:33:48.73
処理系やOSによっては、1byte=6bitとか1byte=10bitとかあるから、そこだけ気をつけて。

139 :デフォルトの名無しさん:2011/12/06(火) 18:34:45.08
>>138
そんなのが今時あるんだったら具体的に言ってみろよ。

140 :デフォルトの名無しさん:2011/12/06(火) 18:40:14.56
よく知らんけどchar=16bitの環境とかは業界によっては未だに現役って聞いた


141 :デフォルトの名無しさん:2011/12/06(火) 18:40:30.48
平仮名を打とうとしたらアンダー点線が出る理由は何でですか?
これbyteと関係ありますか?

「abc」を打つ時はアンダー点線でない。
「あいう」を打つ時は点線が出る。

142 :デフォルトの名無しさん:2011/12/06(火) 18:40:57.13
補数の意味が未だに分からない。
どういうこと?

143 :デフォルトの名無しさん:2011/12/06(火) 18:43:33.38
>>141
まったく関係ない。
>>142
http://ja.wikipedia.org/wiki/%E8%A3%9C%E6%95%B0

144 :デフォルトの名無しさん:2011/12/06(火) 18:46:22.74
ていうかCって補数表現使うって規格なの?


145 :デフォルトの名無しさん:2011/12/06(火) 18:46:54.54
>>144
規格じゃない。1の補数というのもある。今時ないとは思うが。

146 :デフォルトの名無しさん:2011/12/06(火) 18:48:24.79
>>143
???

2進数の場合、「2が補数」じゃなくて、「2の補数」??
??

147 :デフォルトの名無しさん:2011/12/06(火) 18:49:59.47
だから自分の環境での取りえる値は limits.h で確認するのだよ
INT_MAX とかね

148 :デフォルトの名無しさん:2011/12/06(火) 18:50:04.36
補数=その基での数え方なの?

2の7に対する補数は3ですか?

149 :デフォルトの名無しさん:2011/12/06(火) 18:51:14.71
じゃあbit演算するときに(-1)を全ビット立ってるマスクとして考えるとかすると死ぬの?

150 :デフォルトの名無しさん:2011/12/06(火) 18:53:07.15
>>146,148
少しは自分でggrks
>>149
別に死にはしない。

151 :デフォルトの名無しさん:2011/12/06(火) 19:10:16.47
>>138
>>133はintが6byteであるような環境にいるかのようなレスだよ

152 :デフォルトの名無しさん:2011/12/06(火) 19:11:27.28
>>149
not演算を。

153 :デフォルトの名無しさん:2011/12/06(火) 19:31:02.88
そもそも値のビットパターンがそのまま一般的な数学で扱う2進数に対応する整数に一致する保証はない

154 :デフォルトの名無しさん:2011/12/06(火) 19:59:07.97
>>153
−の数のビットパターン何てそもそも一般的な数学では定義されないもんね。



155 :デフォルトの名無しさん:2011/12/06(火) 20:03:26.74
正数のビットパターンが一般的な数学で定義されてるかのような…

156 :デフォルトの名無しさん:2011/12/06(火) 20:04:00.26
配列を宣言した状態のときって配列の要素は何ですか?
何も代入してないとき。

str[10];

str[0]?



157 :デフォルトの名無しさん:2011/12/06(火) 20:04:33.07
>>155
定義されてるでしょ。

0 01 11 110・・・・・・

158 :デフォルトの名無しさん:2011/12/06(火) 20:09:31.66
>>156
スタック上ならゴミ、静的な領域ならゼロ。

だと思う。

159 :デフォルトの名無しさん:2011/12/06(火) 20:11:46.68
>>157
そもそも2進法を使ってないかも知れない。

160 :デフォルトの名無しさん:2011/12/06(火) 20:47:23.60
Cの配列とJavaの配列じゃメモリに対する動作が違うというのですが
どういうことでしょうか?



161 :デフォルトの名無しさん:2011/12/06(火) 20:52:31.20
>>160
Cはガバっと確保される。
JAVAはモリモリっと確保される。

162 :デフォルトの名無しさん:2011/12/06(火) 21:35:18.61
あのー時代遅れのおじさんに教えてください。

配列のシンボルに&付けたの配列のポインタになったのはいつからですか?

uint8_t a[10];と宣言した時

&a
a
&a[0]

は同じ意味ですか?
下2つはK&Rの頃からあったと思ったけど、一番上のはいつごろから使えるようになったんでしょ。
それとも方言なんでしょうか?

163 :デフォルトの名無しさん:2011/12/06(火) 21:44:27.10
&aて、配列のアドレスが格納されてるメモリのアドレスだぞ?馬鹿?

164 :デフォルトの名無しさん:2011/12/06(火) 21:47:46.76
ちなみに、
int $$$ = 0;
っていけるの知ってた?

165 :デフォルトの名無しさん:2011/12/06(火) 21:48:40.53
だよね。そうゆうコーディングで正常に動いてるんで疑問に思ったんだよ。
ちなみに&aをaや&a[0]に書き換えても正常に動くので悩んでるんだ。

166 :デフォルトの名無しさん:2011/12/06(火) 21:49:21.18
すまんageてた。

167 :デフォルトの名無しさん:2011/12/06(火) 21:50:40.46
>>164 しらないよ。そんなの。

168 :デフォルトの名無しさん:2011/12/06(火) 21:51:28.58
変な場所に書き込んでんだろ。
運がよければ普通に動くよ。

169 : 忍法帖【Lv=7,xxxP】 :2011/12/06(火) 21:58:52.08

#include <stdio.h>

int main(void)
{
int left;
int right;
left = 10;
right = 3;
printf("%d\n",left + right);
printf("%d\n",left - right);
printf("%d\n",left * right);
printf("%d\n",left / right);
printf("%d\n",left % right);
return 0;
}


これが上手く認識されないのですが・・・

170 :デフォルトの名無しさん:2011/12/06(火) 22:01:34.66
a と &a[0] が等価だってのはわかるよな?

171 :デフォルトの名無しさん:2011/12/06(火) 22:02:03.62
>>169
誰に?

172 :デフォルトの名無しさん:2011/12/06(火) 22:04:04.00
>>162
どれでも、好きなの使っとけ。 http://codepad.org/tJ0N8DXC


173 : 忍法帖【Lv=7,xxxP】 :2011/12/06(火) 22:07:28.89
>>171
コマンドプロンプトでです

174 :デフォルトの名無しさん:2011/12/06(火) 22:08:38.08
http://codepad.org/VcvueCUr
できたけど。つかこのサイトいいね

175 :デフォルトの名無しさん:2011/12/06(火) 22:08:46.16
中学時代、数学と並列してCとかjavaやってたら確実に頭良くなってただろうな。
パソコンの機能とか、高次元的なものを表面的にいじって遊んでただけだった。

20からC言語とか泣きたい。

176 :デフォルトの名無しさん:2011/12/06(火) 22:10:53.68
みんな絶句してるよ

177 :デフォルトの名無しさん:2011/12/06(火) 22:12:27.89
>>173
意味がよくわからないが
一瞬だけ起動して消えるってことなら
return 0;の手前にgetchar();を入れてくれ
コンパイルができないってことならコンパイラを入れてくれ

178 : 忍法帖【Lv=7,xxxP】 :2011/12/06(火) 22:12:31.90
>>171
「内部コマンドまたは外部コマンド、操作可能なプログラムまたはパッチファイルとして認識されていません」と出る

179 :デフォルトの名無しさん:2011/12/06(火) 22:15:40.25
>>178
なんてコマンド打ってるんだよ

180 : 忍法帖【Lv=7,xxxP】 :2011/12/06(火) 22:17:56.40
>>179
ゴメンなさい。事故解決しました。題名にスペースが入っていたのが原因でした。ありがとうございました。

181 : 忍法帖【Lv=7,xxxP】 :2011/12/06(火) 22:18:32.10
自己w

182 :デフォルトの名無しさん:2011/12/06(火) 22:21:59.79
ソースファイルを実行、とか?

183 :162:2011/12/06(火) 22:30:50.34
>>172 ありがとう。同じなんだな。
いつからこうなったか疑問だ。

184 :デフォルトの名無しさん:2011/12/06(火) 22:32:15.22
>>162
uint8_t a[10];
1)&a
2)a
3)&a[0]

1,2,3とも値は同じ。特に2,3は同じになって配列の先頭要素を指すポインタを生成する。
1と2,3で異なるのは型。

1の型は uint8_t (*)[10]
2,3の方は uint8_t *

185 :デフォルトの名無しさん:2011/12/06(火) 22:38:18.70


186 :184:2011/12/06(火) 22:38:46.14
>>162>>183

このサンプルコードで納得できる?
わかりやすいようにcharの配列にした。

ttp://codepad.org/xkPGjjwV

187 :デフォルトの名無しさん:2011/12/06(火) 22:40:35.39
>>184
とすると&a+1とするとa[1]を指すポインタではなく
a[10]を指すポインタ(実際にはあり得ないけど)になるのか。

188 :デフォルトの名無しさん:2011/12/06(火) 22:44:02.35
>>184 勉強になった。ありがとう。

189 :デフォルトの名無しさん:2011/12/06(火) 22:47:31.46
>>157
2進法じゃなくて、ビットパターンについてまで定義してんの?数学で?

190 :デフォルトの名無しさん:2011/12/06(火) 22:51:18.70
>>183
いつからか、が一番の疑問っぽいので。
使える、または結果的に同じ意味になるのはK&Rから
データ型が区別されるようになったのはANSIから
であってると思う。

191 :デフォルトの名無しさん:2011/12/06(火) 23:09:13.12
嘘吐き朝鮮、中国人がやってる報道機関 朝鮮人犯罪があまり報道されない理由
韓国文化放送(MBC) 〒135-0091 東京都港区台場2-4-8 18F
フジテレビジョン 、、 〒137-8088 東京都港区台場2-4-8 

韓国聯合TVNEWS(YTN) 〒105-0000 東京都港区赤坂5-3-6
TBSテレビ     、 、、 .〒107-8006 東京都港区赤坂5-3-6 

大韓毎日   、、、、、、、、、、、、 〒108-0075 東京都港区港南2-3-13 4F
東京新聞(中日新聞社東京本社) 〒108-8010 東京都港区港南2-3-13

京郷新聞  、、、、、、〒100-0004 東京都千代田区大手町1-7-2
産経新聞東京本社  〒100-8077 東京都千代田区大手町1-7-2
(サンケイスポーツ、夕刊フジ、日本工業新聞社)

朝鮮日報   、、、  〒100-0003 東京都千代田区一ツ橋1-1 4F
毎日新聞東京本社 〒100-8051 東京都千代田区一ツ橋1-1-1

韓国日報  、、、、  〒100-0004 東京都千代田区大手町1-7-1 8F
読売新聞東京本社 〒100-8055 東京都千代田区大手町1-7-1

東亜日報   、、、  〒104-0045 東京都中央区築地5-3-2
朝日新聞東京本社 〒104-8011 東京都中央区築地5-3-2(AFP、NYT)

韓国放送公社(KBS) 〒150-0041 東京都渋谷区神南2-2-1NHK東館710-C
NHK放送センター、  〒150-8001 東京都渋谷区神南2-2-1

192 :デフォルトの名無しさん:2011/12/06(火) 23:10:19.26
>>187
そういうこと。

>a[10]を指すポインタ(実際にはあり得ないけど)
実際にint (*)[10]みたいな型のポインタが出てくるのは
int a[5][10];
と宣言した時のa[0]の型がint (*)[10]になる。

193 :デフォルトの名無しさん:2011/12/06(火) 23:21:45.63
>>175
中学時代に興味を持ったとしても、本を取ってから、その瞬間から
ずっと勉強をし続けるってのは不可能だよ。

中学生でCの深い所、例えばsystemみたいな関数?の意味分かる人いないでしょ。

printf,scanf,for,while,ifとか基本的な関数、演算子
しかしらない人がほとんど。

じゃんけんゲームなんて表面的な文法知識で作れるしw

194 :デフォルトの名無しさん:2011/12/06(火) 23:23:57.19
systemとか使わんだろ

195 :162:2011/12/06(火) 23:25:12.24
>>192 重ねがさね、丁寧な説明をありがとう。

196 :デフォルトの名無しさん:2011/12/06(火) 23:26:38.96
>>193
そんなこと言っても、マになったらずっと勉強し続けることになるよ。

197 :デフォルトの名無しさん:2011/12/06(火) 23:33:38.87
中学でC言語とか分かるの、開成とか灘の奴らなら可能かな。


198 :デフォルトの名無しさん:2011/12/06(火) 23:37:22.77
小学生でBASICなら俺がやってた
英語なんてまだ各アルファベットの読み方を辛うじて知ってる程度だから
if文のことを「アイエフ文」とか言ってたなw

勉強の出来不出来とかより、周りにその環境があるか否かがデカいと思われ

199 :デフォルトの名無しさん:2011/12/06(火) 23:47:27.70
マ板でやれ。

200 :デフォルトの名無しさん:2011/12/07(水) 06:27:56.62
int b;

201 :デフォルトの名無しさん:2011/12/07(水) 09:23:56.39
小学生中学生でも基本情報取ってる子とかいるしね
あのテストってセンター試験の国語より難しいだろうによくとれたもんだわ

202 :デフォルトの名無しさん:2011/12/07(水) 09:26:28.47
楽器なんかだと小さい頃から始めないと伸びないと言われるけど、
プログラミングの場合はどうかな?

203 :デフォルトの名無しさん:2011/12/07(水) 10:43:17.99
>>199

204 :デフォルトの名無しさん:2011/12/07(水) 11:12:14.65
Rubyのコミッターに中学生がいるよね

205 :デフォルトの名無しさん:2011/12/07(水) 12:00:51.18
int c;

206 :デフォルトの名無しさん:2011/12/07(水) 15:09:52.15

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<conio.h>
void main()
{

srand(time(NULL));
int uranai;


uranai=rand() %3;
puts("あなたの運勢を占います(何かキーを押してね♪)");
getch();
if(uranai==0)
puts("大吉です");
else if(uranai==1)
puts("中吉です");
else
puts("凶です");
}





207 :デフォルトの名無しさん:2011/12/07(水) 15:14:35.07
え?

208 :デフォルトの名無しさん:2011/12/07(水) 15:30:28.80
スレッドプログラムを書いたのですが、
プログラムがたま(十時間に一回くらい)にシグナル11で落ちます。

いろいろ調べてると、localtimeがスレッドセーフではないのに、
複数スレッドから呼ばれていたので、コイツが原因かな?
と思って修正しました。

しかし他にもスレッドセーフではない関数があるかもしれません。
どうやってチェックするとよいのですか?

209 :デフォルトの名無しさん:2011/12/07(水) 15:46:28.99
>>208
よく分からない関数は全てスレッドセーフじゃないと思えばおk

210 :デフォルトの名無しさん:2011/12/07(水) 15:47:42.16
http://linuxjm.sourceforge.jp/html/LDP_man-pages/man7/pthreads.7.html

211 :デフォルトの名無しさん:2011/12/07(水) 15:49:44.64
この_r無しとか使ってればAUTO。
http://linuxjm.sourceforge.jp/html/LDP_man-pages/man7/posixoptions.7.html#lbBQ

212 :デフォルトの名無しさん:2011/12/07(水) 16:03:24.32
よくグローバル変数のerrnoを使ってエラー情報を調べるじゃないですか
あれってマルチスレッドのこと何も考えてないように思えるんですけど
マルチスレッドで使おうとしたらerrnoを使うあらゆる関数で排他処理しないと駄目ってことですか?


213 :208:2011/12/07(水) 16:10:32.06
>>209,210,211
感謝です。

>>210のページを確認する限りは、system()、strtok()もスレッドセーフではないのですね。。。
>>211、localtime_r()、strtok_r()と言う関数は知りませんでした。対応します。
ありがとうございます。

もう一点スレッド関係で、基本的なことを教えていただきたいのですが、
スレッド間での通信にstaticの構造体を利用しています。
スレッドAはその構造体に書き込む専用です。
スレッドBは読み込み専用です。
通信に使用している構造体は、ポインタの要素を含んでなく、すべて実体の領域です。

この場合は、排他をする必要がないと思っているのですが、
それは正しいでしょうか?

214 :デフォルトの名無しさん:2011/12/07(水) 16:23:06.92
>>212
man errno

215 :デフォルトの名無しさん:2011/12/07(水) 16:23:17.49
書き込んでる最中に読み込んだらどーなるのさ

216 :デフォルトの名無しさん:2011/12/07(水) 16:26:30.72
>>212
スレッドセーフ版はマクロになってる。
>>213
使う側が途中の状態でも問題ないなら問題ない。

217 :デフォルトの名無しさん:2011/12/07(水) 16:26:43.38
>>213
各メンバへの代入処理がアトミック(不可分 というキーワードで調べるといいかも)なものであり、かつ、
複数のメンバを変更する際に、途中の状態を読み取られてもよいのなら、排他制御はいらない。

218 :デフォルトの名無しさん:2011/12/07(水) 20:27:17.02

朝日新聞は一時期300人のネット工作員をかかえ、工作していた。
捕まった編集者は49歳ですが、こんなカスでも1500万円の年収がもらえるんですよ。
>>866
14時以降に何が起きたんだ

>>866
Domain Information: [ドメイン情報]
a. [ドメイン名] ASAHI-NP.CO.JP
e. [そしきめい] かぶしきがいしゃ あさひしんぶんしゃ
f. [組織名] 株式会社 朝日新聞社

これが規制されたからじゃねw

−「朝日新聞社は、とある思想やパラダイムに日本の世論を誘導する見返りに、中国から大量の資金を貰っている。」−
これはおそらく週刊誌さえ書けない。
「失語症躁鬱ニートは氏ねよ」【ネット】朝日新聞社員(49)ネットで荒らし行為、会社ごとアクセス規制へ


219 :デフォルトの名無しさん:2011/12/07(水) 20:33:27.80
こういう拡散的な行為を行ってるのも規制すりゃいいのにね。巻き添え食らったら面倒だけど。

220 :デフォルトの名無しさん:2011/12/07(水) 20:36:20.19
同一書き込みは規制されてるはずじゃなかったか

221 : 忍法帖【Lv=8,xxxP】 :2011/12/07(水) 21:28:12.02
初心者です。WindowsXPを使っています。コマンドプロンプトでのコンパイルの仕方が分かりません。誰か教えてください。

222 :デフォルトの名無しさん:2011/12/07(水) 21:30:37.35
>>221
使用したいコンパイラの名前とバージョンは

223 : 忍法帖【Lv=8,xxxP】 :2011/12/07(水) 21:33:38.77
テキストファイルにプログラムを書き込んで保存して、コマンドプロンプト・・・・・?

224 :デフォルトの名無しさん:2011/12/07(水) 21:36:16.88
>>221
ソースコードを書いて
codepadに貼り付けるとできあがり

225 :デフォルトの名無しさん:2011/12/07(水) 21:54:51.24
http://codepad.org/Pw02eeio

文字列を入力するとそこから数字を取り除くプログラムですがエラーがアレでアレです
例 : asdf12afd→asdfafd
(ついでに取り除いた後の文字数も表示させなければならないのですがまだ追加してない)
心が折れたのでヒントを・・・

226 :デフォルトの名無しさん:2011/12/07(水) 21:59:21.31
では、教えてあげよう
アルファベット<数字
アルファベット==アルファベット
数字==数字
となるような比較関数を用意すればクイックソートするだけで、なんと!答えが見つかるのだ!

227 :226:2011/12/07(水) 22:00:29.72
すいません嘘をつきました
クイックソートではなくお好きな安定ソートをご利用ください

228 :デフォルトの名無しさん:2011/12/07(水) 22:00:47.81
>>225
if文がおかしい。条件式が真の時、複数の文を実行したいなら{}で囲む。

229 :デフォルトの名無しさん:2011/12/07(水) 22:01:10.90
C言語でマルチスレッドってどういうこと?
簡単な例で頼む。

230 :デフォルトの名無しさん:2011/12/07(水) 22:04:40.18
>>228
クッ頭から抜けていた・・・
ありがとうございますまだ動くか分からんけど

231 :デフォルトの名無しさん:2011/12/07(水) 22:10:30.11
>>225
http://codepad.org/g4Uj8QVc

232 :デフォルトの名無しさん:2011/12/07(水) 22:16:38.97
>>225
http://codepad.org/3im7Bl6Q

数字を取り除いた後の文字列の文字数が欲しいなら、その文字数を返すようにするかstrlenを使う

233 :デフォルトの名無しさん:2011/12/07(水) 22:39:38.68
>>227
比較関数を渡せる安定ソート関数を教えてください

234 :デフォルトの名無しさん:2011/12/07(水) 22:43:23.16
>>229
提供されているスレッドライブラリを使う。pthreadとか。

235 :デフォルトの名無しさん:2011/12/07(水) 22:50:58.22
>>229
setjmp/longjmpで。

236 :デフォルトの名無しさん:2011/12/07(水) 22:52:57.25
>>233
比較関数を引数にとるバブルソート(or 挿入ソート)の実装してみるんだ

237 :デフォルトの名無しさん:2011/12/07(水) 23:01:46.34
むしろ安定でないソートって何があったっけなー。ヒープソートとかか。

238 :デフォルトの名無しさん:2011/12/07(水) 23:03:23.86
>>236


239 :デフォルトの名無しさん:2011/12/07(水) 23:04:18.04
>>237
クイックソートとかシェルソートとかボゴソートとか

240 :デフォルトの名無しさん:2011/12/07(水) 23:08:52.55
で、なんで安定である必要があんの?

241 :デフォルトの名無しさん:2011/12/07(水) 23:12:59.24
取り除くだけなのに他の部分の順番が変わったら心が傷つくでしょ

242 : ◆QZaw55cn4c :2011/12/07(水) 23:41:36.43
>>229
つ pthread(posix-thread)
win なら win32api の thread 関係の api を叩くという手もある。

243 :デフォルトの名無しさん:2011/12/07(水) 23:42:18.52
暗号をキーボードで入力すると解読して出力するプログラム作ってるんだけど、配列使うやり方からポインタのみにしたら動かなくなったんだけど、どう直せばいいですか?
現段階ではまだ解読ではなくただ出力するだけにしてある。

#include <stdio.h>

void inp(char *ch);
void oup(char *ch);

int main()
{
char *ch;
char **s;

s=&ch;

inp(*s);
oup(*s);

return 0;
}

void inp(char *ch)
{
printf("暗号を入力して下さい \n");
*ch=getchar();
}

void oup(char *ch)
{

printf("%s",(*ch));
}

244 :デフォルトの名無しさん:2011/12/07(水) 23:42:35.58
>>241
でも、取り除けないよね。

245 :デフォルトの名無しさん:2011/12/07(水) 23:46:54.83
>>243
ポインタ変数を宣言しただけで領域が確保されてないからだろう。
char *ch = malloc(sizeof(char)*100);
とでもしておけばいい。

246 :デフォルトの名無しさん:2011/12/07(水) 23:55:04.07
>>245
だめみたいだ。文字列の入力までは上手くいくんだが、入力後にEnter押すと強制終了するんだ。さっきからこればっかり。

247 :デフォルトの名無しさん:2011/12/08(木) 00:04:54.39
エニグマをC言語で作る方法教えてください

248 :デフォルトの名無しさん:2011/12/08(木) 00:08:06.95
Mainのreturn 0;の前にgetchar();を追加

249 :デフォルトの名無しさん:2011/12/08(木) 00:08:17.59
>>247
http://lmgtfy.com/?q=%E3%82%A8%E3%83%8B%E3%82%B0%E3%83%9E%E3%80%80C%E8%A8%80%E8%AA%9E%E3%80%80%E5%AE%9F%E8%A3%85

250 :デフォルトの名無しさん:2011/12/08(木) 00:11:59.70
>>246
入力した後のoup内のprintfで落ちてると思う。
修正したコード http://ideone.com/CB8LS


251 :デフォルトの名無しさん:2011/12/08(木) 00:12:49.77
>>248
main関数でやったらユーザ定義作った意味無いんだ。申し訳ないが、別の方法はないかな?

252 :デフォルトの名無しさん:2011/12/08(木) 00:19:16.65
>>250
ありがたいけど、なんか怖くて開けないわ。

253 :デフォルトの名無しさん:2011/12/08(木) 00:36:34.83
>>252
codepadと同じく、入力されたコードをコンパイル・実行して結果を返してくれるサイト。
>>243でやりたい事はたぶん、入力された文字列に対して何らかの処理を行った後。結果を表示したいんですよね?
getcharは一文字入力だから必要な回数だけfor文で繰り返さないとだめですよ。
あと、ポインタ変数は宣言しただけでは使えません。他の変数を指すようにするか、mallocで確保して下さい。
あとmallocは実装にもよると思うけど、0で初期化されません。(たぶん)。必要に応じてmemsetで初期化して下さい。

254 :デフォルトの名無しさん:2011/12/08(木) 02:46:38.83
その方向ならcallocを進めるべきだが。

255 :デフォルトの名無しさん :2011/12/08(木) 04:14:59.85
>>243
ちょっと改良してみたfree()は自分でしてね
#include <stdio.h>
#include <stdlib.h>
void inp(char **ch);
void oup(char *ch);
int main()
{
char *ch;
inp(&ch);
oup(ch);
return 0;
}
void inp(char **ch)
{
int i,j;
char c;
printf("暗号を入力して下さい \n");
*ch = malloc(sizeof(char));
for(i=1,j=0;(c= getchar())!='\n' ;i++,j++){
*ch = realloc(*ch,sizeof(char)*i);
(*ch)[j] = c;
}
if(c == '\n')
(*ch)[j] = '\0';
}
void oup(char *ch)
{
printf("%s",ch);
}

256 :デフォルトの名無しさん:2011/12/08(木) 08:15:06.22
>*ch = malloc(sizeof(char));
げ。

257 :デフォルトの名無しさん:2011/12/08(木) 12:43:38.12
続きはないのか

258 :デフォルトの名無しさん:2011/12/08(木) 15:02:53.66
平松邦夫/民主党
大阪市役所・自治労・大阪市労働組合・日教組・大阪市教育委員会・自民党・共産党・社民党・関西電力・住友グループ
・毎日放送・毎日新聞・関西経済連合・日本原子力発電株式会社 ・ 週刊文春・週刊新潮・NHK・朝日新聞・読売新聞
・部落解放同盟・朝鮮総連・在日本大韓民国民団・日本遊技関連事業協会・全日本遊技事業協同組合連合会・日本弁護士連合会・生活保護受給者・反日左翼・9条の会・革マル派・中核派

VS

橋下徹/維新の会
大阪市民・みんなの党・国民新党・亀井静香・石原慎太郎・東国原英夫
 様子見:公明


259 :デフォルトの名無しさん:2011/12/08(木) 15:37:01.92
>>225の続きです
内容は同じですが、今度はポインタではなく配列のみを使って関数を作れという問題でしたが・・・
int *del_digit2( char st1[], char st2[] )
{
int i,j;
for(i=0,j=0 ; i<100 ; i++,j++){
if(isalpha(st1[i])) st2[j]=st1[i];
else j--;
}

なんかうまくいきません
ご教授願います

260 :デフォルトの名無しさん:2011/12/08(木) 15:51:45.40
>>259
ヘイ!ここは18歳未満お断りだぜ!って
ガキは宿題スレに行ってパパのミルクでも飲んできなHAHAHA

261 :デフォルトの名無しさん:2011/12/08(木) 16:18:07.85
まぁ、いやらしい><

262 :デフォルトの名無しさん:2011/12/08(木) 16:56:44.93
>>259
#include<stdio.h>
#include<ctype.h>

void del_digit2(char st1[], char st2[]){
int i = 0, j = 0;

while (st1[i]) {
if (isalpha(st1[i]))
st2[j++] = st1[i++];
else
i++;
}
}

int main(void){
char st1[100], st2[100];

printf("input string¥n");
scanf("%s", st1);
del_digit2(st1, st2);
printf("%s¥n", st2);

return 0;
}

263 :デフォルトの名無しさん:2011/12/08(木) 21:33:25.51
「Perlで有名な小飼弾に暴言を吐いたキチガイw OSSコミュニティから物凄いパッシングw」
http://blog.livedoor.jp/dankogai/archives/51733482.html

北畠徹也氏が代表の「テラ・インターナショナル」がPerlを勝手に商標登録

>>この北畠って人は、ツイッターとかでも自殺するって言って話題になったり
よく分からないNPOか何かに募金をしてくれってメールを数万人規模のMLに流したり
それらは実はチョットした技術的ミスだって釈明してたりする人らしいね

Tetsuya_K 北畠徹也
@dankogai の家に電話したら、「小飼弾は死にました」らしい。ざまみろ。ざまみろ。というか、死んだ方が社会にとって幸せ。以上。# どうでもいいが、jcode.plなんて簡単につくれるじゃろ。あんなので調子に乗るアホもどうかしてるぜ。
Tetsuya_K 北畠徹也
I compared my @klout with @dankogai, how does your @klout compare? klout.com/user/dankogai/… @Tetsuya_K に比べたら全く大したことねーな。大口叩く愚か者が。

コメントの一覧

「みんなおもしろいおもしろいいってるけど北畠さん完全にかわいそうな精神病の患者ですよね」
「コメント欄が病的で怖い。人格が分裂してる?」
「本当に何がしたかったんだろう・・・」
「無事取り消されたそうで。本当によかった。」


264 :デフォルトの名無しさん:2011/12/08(木) 22:37:10.84
http://codepad.org/ZUjxbf5r

ASCIIいじってコードが二つ前のヤツを表示するんだけど、これを実行すると、どうもinpの段階で、入力はできてもアドレスがメインに渡ってないみたいなんだが、どうすれば、メインにしっかり渡るようになってプログラムが動くようになるのか教えてください。

265 :デフォルトの名無しさん:2011/12/08(木) 22:43:04.12
>>264
void inp(char *s,int i)
{
char f[NUM];

printf("%2d: ",i+1);
gets(f);
strcpy(s, f);
}
でいいかな?

266 :デフォルトの名無しさん:2011/12/08(木) 23:59:40.06
>>265
ありがとう。なんだか、void型のinp関数の中で配列宣言した所為でメインに戻ったときに**Sの中身が消えてるみたいなんだけど、strcpyだと大丈夫なんだっけ?

267 :デフォルトの名無しさん:2011/12/09(金) 00:18:49.39
>>266
ポインタの基本がわかっていないんじゃない?

s = f;としたときにどこに何が代入されているのか
strcpy(s, f);としたときにどこに何がコピーされているか

わかってる?

これだけじゃなんだから、
s = f;
とすると、せっかくmainから渡してもらったバッファを指すポインタを、fをさすポインタで上書きし、
しかもそのまま破棄することになるよ。

268 :デフォルトの名無しさん:2011/12/09(金) 00:44:32.31
>>267
そうだね。ポインタも分かってないのかもしれないけど、strcpyをあまり使ったことが無いからどんな動きをするのかイメージつかめてないわ。

できたら教えてもらいたい。

269 :デフォルトの名無しさん:2011/12/09(金) 01:01:24.86
struct aho* aa;
struct aho* bb;

aaのアドレスを保持したいときって
bb = aa;
でいいのかね
うまくいかないんだが

270 :デフォルトの名無しさん:2011/12/09(金) 01:01:33.42
mallocで確保した領域はfreeで解放する派ですか?しない派ですか?
http://kmaebashi.com/programmer/c_yota/malloc.html
上記ページで色々と書かれていますが、皆さんはどうしますか?
ちなみに私は、きっちりとfreeする派です。

271 :デフォルトの名無しさん:2011/12/09(金) 01:06:14.93
>>269

「aaが指している領域」を保持したいのならbb = aa;でよい。

「aaのアドレスを保持したい」のなら
struct aho* aa;
struct aho** bb;
bb = &aa;

272 :デフォルトの名無しさん:2011/12/09(金) 01:08:59.89
>>268

エラー処理を省略すれば
strcpy(s, f);

while (*s++ = *f++)
;
に当たる。

s = f;
と比較すれば、やっていることの違いは判るよね?

273 :デフォルトの名無しさん:2011/12/09(金) 01:14:09.46
>>270
malloc/ freeは同レベルで対になるようにコーディングするようにしている。

fopen, fcloseとかもそうだし、とにかくリソース取得解放が絡むようなものは、
対にしてコーディングしないと、簡単に破綻する。

OOPになるとオブジェクトのライフサイクルが延び、単純に取得解放が
対に書けなくなる場合が多い。そういう場合は仕方ないとも思うけど。

274 :デフォルトの名無しさん:2011/12/09(金) 01:15:16.33
(1) コンパイラがソースコードの文字コードを正確に判別できるか、あるいは
特定の文字コードを正確に扱えるか

(2) 生成されるバイナリに埋め込まれる文字列が何でエンコーディングされるか

何度も言うようにこの2つは別問題。
こんなプログラマ1年生が覚えるような区別が付かない人が威張ってるこのスレって何なのかな。



275 :デフォルトの名無しさん:2011/12/09(金) 01:24:02.33
>>272
先頭のアドレスだけでなく、それ以外も代入してるってこと?

276 :デフォルトの名無しさん:2011/12/09(金) 01:31:20.30
対消滅

277 :デフォルトの名無しさん:2011/12/09(金) 01:33:21.50
>>272
strcpy ってエラー処理やってんの?

278 :デフォルトの名無しさん:2011/12/09(金) 01:36:25.48
>270
main()関数内でmallocする場合、およびそのソースをその後まず再利用することがない場合はfreeしないこともあるかもしれない。
それ以外ではfreeする。

>http://kmaebashi.com/programmer/c_yota/malloc.html
>他の職種はどうか知らないけど、およそプログラマに関する限り、 手を抜ける所では可能な限り手を抜くのが、
>最大の美徳だと私は思っています。
これがなんか気持ち悪い。


279 :デフォルトの名無しさん:2011/12/09(金) 01:42:25.53
freeしなかったらメモリ使用量が増大していくだろ。なんども確保したとき。
解放が面倒なら std::string buf(1<<20, '\0');
と確保したら良い。

280 :デフォルトの名無しさん:2011/12/09(金) 01:43:30.30
>>268
やりたいのは、こういう事?
http://codepad.org/Bm4ZQ4Fc

入力例:
1:#include <stdio.h>
2:int main()
3:{
4: int n,k;
5: scanf("%d", &n);
6: for (; n > 1; n--) {
7: for (k = n - 1; n % k; k--);
8: if (k == 1)
9: printf("Answer=%d¥n", n);
10: }

出力例:
1: !glajsbc:qrbgm,f<
2: glrk_gl&'
3: y
4: glrl*i9
5: qa_ld& #b *$l'9
6: dmp&9l</9l++'y
7: dmp&i;l+/9l#i9i++'9
8: gd&i;;/'
9: npglrd& ?lqucp;#bZl *l'9
10: {


281 :デフォルトの名無しさん:2011/12/09(金) 02:08:50.02
>>280
まったく持ってこの通りだわ。やっぱりポインタが分かってないみたい。ユーザ定義でmalloc使うこととか、プロトタイプの所をダブルポインタにする必要あったこととか全く分からなかった。

282 :デフォルトの名無しさん:2011/12/09(金) 02:20:20.07
>>273,>>278
レスありがとうございます。
やっぱりmallocしたやつはfreeしといた方が無難でしょうかねぇ。
malloc/free論争は調べれば調べるほど分からなくなってきます・・・
最終的にはOSが面倒見てくれるんでしょうが、malloc/freeが対になってないと、なんとなく気持ち悪いです。
「OSが面倒見てくれる」というのも希望的観測に過ぎないんでしょうけど。

malloc/free論争もそうですけど、C言語ってもはや、宗教ですよね。

283 :デフォルトの名無しさん:2011/12/09(金) 02:39:17.04
単発単一処理ですぐ終了するようなものはfreeしなくてよい
freeが問題になるのはfirefoxのようなPC起動してシャットダウンするまで
ずっと立ち上げるタイプのアプリとかデーモンね

284 :デフォルトの名無しさん:2011/12/09(金) 03:51:05.14
>>268
http://linuxjm.sourceforge.jp/html/LDP_man-pages/man3/strcpy.3.html
実装例がマニュアルにあったりするよ。

あと、新ANSI C辞典も世のプログラマは大抵お世話になった時期があるんじゃないかな。
買っとくといい。

285 :デフォルトの名無しさん:2011/12/09(金) 08:12:09.74
>>284
ねーよ。
全部がお前基準だと思うなw

286 :デフォルトの名無しさん:2011/12/09(金) 08:53:24.33
>>283
そんなもん環境による

287 :デフォルトの名無しさん:2011/12/09(金) 08:54:07.35
ねーよ。
全部がお前基準だと思うなw

288 :デフォルトの名無しさん:2011/12/09(金) 08:58:48.66
>>274
どこからの誤爆かは想像できるが、そんな当たり前のことは皆わかってて
Visual Studio で (2) がどうなるかの問題だろ。

少なくとも、こんな 2ch 1年生が覚えるようなレスするスレの区別が付かな
いお前が威張って言うことではない。

289 :デフォルトの名無しさん:2011/12/09(金) 09:00:55.44
>>272
エラー処理する strcpy() なんて見たことないぞ。

290 :デフォルトの名無しさん:2011/12/09(金) 09:14:09.77
>>274
ソースとバイナリの文字コードって違ってもいいんだ
じゃあputs("hogehoge");してファイル出力したのにメモ帳で開いたらfugafugaになってるみたいなことがあってもおかしくないってこと?

291 :デフォルトの名無しさん:2011/12/09(金) 09:18:11.56
まぁそうだな。

292 :デフォルトの名無しさん:2011/12/09(金) 09:23:58.03
じゃあ
FILE * p = fopen("hoge.txt");
ってしたのに
fuga.txtを開いても文句は言えないってことですか?
こうなってくるとC言語ってもうろくな事できないじゃないですか
まともな動作を期待することもできないひどい言語ですね


293 :デフォルトの名無しさん:2011/12/09(金) 09:25:30.40
まぁ心配しなくてもお前ほどじゃない。

294 :デフォルトの名無しさん:2011/12/09(金) 09:34:38.79
でもまあぶっちゃけリテラルなんて現場じゃ殆ど使わないよね
開発者向けのデバッグメッセージぐらいだろ



295 :デフォルトの名無しさん:2011/12/09(金) 10:04:21.67
>>292
処理系定義だろうから、文句は処理系作成者に言えばいいだけ。

まあ、知恵遅れのクレーマーが使う言語でないのは確かだから、
お前はとっとと Java とか C# とかに行くべき。

296 :デフォルトの名無しさん:2011/12/09(金) 10:08:40.86
Cはキチガイが作った言語だから仕方ないよ

297 :デフォルトの名無しさん:2011/12/09(金) 10:10:02.54
Cもできないやつがよく言う言い訳乙。

298 :デフォルトの名無しさん:2011/12/09(金) 10:10:34.79
ガイジン「ヒラガナ、カタカナ、カンジ…ニホンジンハキチガイデース!!」

299 :デフォルトの名無しさん:2011/12/09(金) 10:50:08.26
int n;

300 :デフォルトの名無しさん:2011/12/09(金) 11:01:52.70
>>298
日本人「複数形、過去形、過去分詞…英国人も…」
まあ、英語は女性名詞/中性名詞/男性名詞がないだけましか。

301 :デフォルトの名無しさん:2011/12/09(金) 11:14:48.67
>>292
馬鹿には無理

302 :デフォルトの名無しさん:2011/12/09(金) 11:15:09.45
日本語文法
ttp://ja.wikipedia.org/wiki/Category:%E6%97%A5%E6%9C%AC%E8%AA%9E%E6%96%87%E6%B3%95


303 :デフォルトの名無しさん:2011/12/09(金) 11:18:34.25
>290-292 のやりとりがあまりにも…

304 :デフォルトの名無しさん:2011/12/09(金) 11:24:42.42
自園草

305 :デフォルトの名無しさん:2011/12/09(金) 13:23:35.68
                            ____
  ┌──────────┐       //´   __,,>、
  |              ::::::::::|      /::/ / ̄:::::::::::::::\
  └┬────────┬┘     /::::l/::::::::::::::::::::::::::::::::l.
    |    -‐-レノ ノ_ ::::|      l:::::::::::/l/lノノ/_イ:::::l
    |    イ゚テ   .ピト` ::|      l:::::::::/ rtテ、  .ィtq l::::::|
    |     '"   .,j   '" ::|      |::lヘ!j  ´  ,j   !;:::/
    |       r‐-,    ::::|      レリー 、    ,....,  lノ/
    |         ̄   :::::|       `ヽ、lヽ 、  ̄ /
    ┤          ::::::├ヽ    , -‐-、_r┴─'ー‐チト      この人 土管です
  /|          ::::::| ´`ヽ /    ヽ ̄`ー-‐'´`''''⌒ヽ
/  |          ::::::|   \  _r‐、-、-、r,    、   ',
    |          ::::::|  ,. -‐ゝ/// 〉 〉 〉 〉 〉    !   ',
    |          ::::::| /  人〈〈〈〈 ' ' ' /っ   l    l
    |          ::::::|/   /  ```´-ァ‐'''"     /   l
\_|          ::::::├ヘ  l    //         / _ ィノ
    ┤          ::::::| `ーヽ、_ノ´l、______/lニ二」
_/|          ::::::|        |_  ( ( ) )_〕|   l

306 :デフォルトの名無しさん:2011/12/09(金) 15:19:06.05
>>290
wchar *h = L"hoge";
こういうののことだろ。


307 :デフォルトの名無しさん:2011/12/09(金) 16:00:53.77
とりあえず例を示すにも
リテラル文字列を非constポインタに入れんなカス

308 :デフォルトの名無しさん:2011/12/09(金) 16:21:13.72
>290
それはメモ帳が認識できない文字コード使ってる状態じゃね?

309 :デフォルトの名無しさん:2011/12/09(金) 16:35:23.29
s="6869212067757973",c=0;while(c<<=4,*s)if((c+=*s++-'0')>15)putchar(c),c=0;

310 :デフォルトの名無しさん:2011/12/09(金) 18:18:45.24
            ,.r.:::;;;;:ュ、
         fイ´__  __ヾ
           {:六;;;;:ハ:;;;:カ   
         (_  ' _^_ヽリ    なんだ AKBって整形した反日朝鮮人だったのかァ
          ,人 l⌒l、      ブームの捏造手法が寒流と同じだけはあるな
        / \,ゝヽr' \    
       /      |:|   ヽ
        l   l   /´堰@ l  !
        |___l  ノ ,イ   !__,}




311 :デフォルトの名無しさん:2011/12/09(金) 18:29:27.77
int m;

312 :デフォルトの名無しさん:2011/12/09(金) 20:34:23.75
はい
http://www.dotup.org/uploda/www.dotup.org2360192.jpg

313 :デフォルトの名無しさん:2011/12/10(土) 00:26:09.70
まぁまて。さすがに、プログラム上最低限必要な文字は規格で規定されてる。
英数字と幾つかの記号。後、ヌル文字とか「コンピュータにしか見えない文字」も
コンパイル時にコンピュータが実行文字列として記述する。

ただ、物理コードとソースコードと実行コードは全部エンコード違っていいというすごいルールだし
それがOS上でどう解釈されるかもOS次第なので、実際のところ、
文字に関する完全な可搬性などというものはげんそうなのだ。

314 :デフォルトの名無しさん:2011/12/10(土) 00:46:12.07
>>313
> 物理コードと

物理コード?

315 :デフォルトの名無しさん:2011/12/10(土) 01:08:53.20
紙テープかなw

316 :デフォルトの名無しさん:2011/12/10(土) 01:54:17.58
>>271
さんくす

317 :デフォルトの名無しさん:2011/12/10(土) 01:54:30.95
コンセントにさすやつかな

318 :デフォルトの名無しさん:2011/12/10(土) 02:05:45.07
相変わらずJISのサイトがクソで規格票が見れない。画面が真っ白。
JIS規格は全部廃止にならないかな。

319 :デフォルトの名無しさん:2011/12/10(土) 08:33:00.25
>>313
文字コード、って知らない?

320 :デフォルトの名無しさん:2011/12/10(土) 09:17:15.31
>>317
それは、プラグ。
コード直接指す奴はスピーカーコードぐらいしか知らない。

321 :デフォルトの名無しさん:2011/12/10(土) 09:36:46.30
動力の電気製品はプラグついてなくて
自分でテキトーに繋いでくれってのが多いが

322 :デフォルトの名無しさん:2011/12/10(土) 09:55:04.62
>>321
それをコンセントに直接刺すのか、勇気あるなぁ。

323 :デフォルトの名無しさん:2011/12/10(土) 10:14:47.00
ローカルネットで音声通話アプリはwin32だけで作れるかな?

324 :デフォルトの名無しさん:2011/12/10(土) 11:22:11.21
win32ってなんですか?

325 :デフォルトの名無しさん :2011/12/10(土) 11:27:35.53
>>323
作ろうと思えば作れるだろうけど、C#のほうがだとうかと

326 :デフォルトの名無しさん:2011/12/10(土) 11:55:03.78
Windows Mini

327 :デフォルトの名無しさん:2011/12/10(土) 15:05:20.83
Win32APIの省略のつもりなんだろうか?


328 :デフォルトの名無しさん:2011/12/10(土) 15:24:01.19
win32って32bit版windowsバイナリって事でしょ?

329 :デフォルトの名無しさん:2011/12/10(土) 15:36:26.06
省略の仕方を間違える奴って多いよね。


330 :デフォルトの名無しさん:2011/12/10(土) 15:47:47.75
なんかいつの間にかペゾルド本が本屋から消えてるな

331 :デフォルトの名無しさん:2011/12/10(土) 15:59:31.69
プログラミングWindowsなら消えてから半年くらいすると再販されるってパターンを繰り返してる。
Win32APIを知るには最高級にいい本だけどあんまり売れるたぐいの本じゃないからだろな。
ましてアスキークソ出版だし。

これが翔泳社ならどんなマイナー本でも店頭から消えることはまずないんだが…
問題は翔泳社はクソ本自体が多いという点かw


332 :デフォルトの名無しさん:2011/12/10(土) 16:09:08.24
ソフトバンク不買デモ
ソフトバンクモバイルの社長、孫正義は在日朝鮮人2世の次男であるため、この携帯電話会社は朝鮮系である。
同社のテレビCM「白戸家の人々」シリーズでは、日本人の父が「犬」と設定されている。犬が可愛いと人気らしいが、
その子が日本人という唐突な設定は、普通の日本人には分かりにくい。

しかし、朝鮮の考えに従えば、犬の子が日本人、日本人=ケセッキ、ということである。
日本人の父親は犬、つまり、日本人は犬の子(ケセッキ)、兄は黒人
つまり、日本人は黒人の弟、朝鮮は儒教社会だが、儒教の考え方では、兄というのは絶対的に偉い。
その上、朝鮮は黒人差別の酷い国で、黒人を人間として見ていない。つまり、日本人は犬の子(ケセッキ)、かつ、人に劣る黒人にすら劣る弟。
結論として、日本人は犬畜生にも劣る、獣以下の生き物であることの表現
http://www.wdic.org/w/POL/%E3%82%B1%E3%82%BB%E3%83%83%E3%82%AD

日本は携帯インターネット先進国でiモードがその普及に貢献しました。
「いわゆるiモードというのはインターネットじゃないんですよ」
「10年前、どっかの国ではiモードなるものが花盛りだった」
という孫正義による発言は歴史と技術の否定以外の何物でもありません。
http://team-kansai.sakura.ne.jp/scheduler/scheduler.cgi?mode=view&no=303


333 :デフォルトの名無しさん:2011/12/10(土) 16:46:00.88
これまたえらいいまさらな話を…

334 :デフォルトの名無しさん:2011/12/10(土) 17:14:26.10
自分でトロン潰しに奔走しまくったくせに、
その口で、「日本人には遺伝子レベルで創造性が無い」
とか抜かしやがったんだっけ。
で、今も日本人や黒人を侮辱するCMを垂れ流しまくりと。

自らの出自に凄まじいコンプレックスでもあるんだろうか。


335 :デフォルトの名無しさん:2011/12/10(土) 17:28:33.47
嘘吐き朝鮮、中国人がやってる報道機関 朝鮮人犯罪があまり報道されない理由
韓国文化放送(MBC) 〒135-0091 東京都港区台場2-4-8 18F
フジテレビジョン 、、 〒137-8088 東京都港区台場2-4-8 

韓国聯合TVNEWS(YTN) 〒105-0000 東京都港区赤坂5-3-6
TBSテレビ     、 、、 .〒107-8006 東京都港区赤坂5-3-6 

大韓毎日   、、、、、、、、、、、、 〒108-0075 東京都港区港南2-3-13 4F
東京新聞(中日新聞社東京本社) 〒108-8010 東京都港区港南2-3-13

京郷新聞  、、、、、、〒100-0004 東京都千代田区大手町1-7-2
産経新聞東京本社  〒100-8077 東京都千代田区大手町1-7-2
(サンケイスポーツ、夕刊フジ、日本工業新聞社)

朝鮮日報   、、、  〒100-0003 東京都千代田区一ツ橋1-1 4F
毎日新聞東京本社 〒100-8051 東京都千代田区一ツ橋1-1-1

韓国日報  、、、、  〒100-0004 東京都千代田区大手町1-7-1 8F
読売新聞東京本社 〒100-8055 東京都千代田区大手町1-7-1

東亜日報   、、、  〒104-0045 東京都中央区築地5-3-2
朝日新聞東京本社 〒104-8011 東京都中央区築地5-3-2(AFP、NYT)

韓国放送公社(KBS) 〒150-0041 東京都渋谷区神南2-2-1NHK東館710-C
NHK放送センター、  〒150-8001 東京都渋谷区神南2-2-1

内にも外にも無能なのは今の日本の政治は朝鮮が行っているから
帰化人だらけの野田内閣をみてみろよ

336 :デフォルトの名無しさん:2011/12/10(土) 17:31:10.19
で、Cと何の関係があるんだ?

337 :デフォルトの名無しさん:2011/12/10(土) 17:39:38.22
プログラムについて書くスキルが無いから、こういう事して誤魔化してる。

338 :デフォルトの名無しさん:2011/12/10(土) 18:10:59.28
心配すんな。
プログラム談議で熱くなってた頃の方がずっとマシだった、って思える時代はすぐそこだ。

339 : ◆QZaw55cn4c :2011/12/10(土) 18:32:31.50
>>338
free() 信者を調伏するのはもう勘弁なんですけど

340 :デフォルトの名無しさん:2011/12/10(土) 18:43:10.14
まあ、調伏されるべきなのはお前の方だから。

341 :デフォルトの名無しさん:2011/12/10(土) 19:25:23.93
QZ=free()信者を知っての発言か?

342 :free( ) 信者:2011/12/10(土) 19:40:23.40
あんな奴を仲間に入れないでくれ。

343 :デフォルトの名無しさん:2011/12/10(土) 20:08:02.06
ネトウヨはどの板にもいるだろ

344 :デフォルトの名無しさん:2011/12/10(土) 20:56:22.99
void main()
ってなんでできないんだろう

345 :デフォルトの名無しさん:2011/12/10(土) 20:59:19.94
韓国大統領の実兄・李議員、補佐官を逮捕

韓国検察当局は10日、李明博(イ・ミョンバク)大統領の実兄で与党ハンナラ党の李相得(イ・サンドゥク)議員の補佐官を、
中堅造船SLSグループ側から政官界工作の請託を受け数億ウォン(1ウォン=約0.07円)の金品を受け取った疑いで逮捕した。
http://www.nikkei.com/news/category/article/g=96958A9C9381959FE3E2E2E6918DE3E2E3E0E0E2E3E39494EAE2E2E2;at=ALL

346 :デフォルトの名無しさん:2011/12/10(土) 21:52:54.02


肝障害を引き起こす可能性があり、海外では販売が禁止されている花王のヘルシア
なぜ日本では売られ続けるのでしょうか


http://ruru2.net/jlab-ruru/pct/s/ruru1316210800870.png
http://ruru2.net/jlab-ruru/pct/s/ruru1316210808155.png
http://ruru2.net/jlab-ruru/pct/s/ruru1316210775533.png
花王の社長は反日○○人

347 :デフォルトの名無しさん:2011/12/10(土) 23:33:47.57
>>344
短い答え: 規格嫁 旧規格 現規格
長い答え: 略w

しかし、「なんで〜はできないんだろう」という質問をするということは、「〜はできるべき」と
思ってるのか? ならなんで「〜はできるべき」だと思うんだ?
まずはそこから説明してくれw

348 :デフォルトの名無しさん:2011/12/11(日) 00:11:40.09
ちょっと違うね
できないという前提でなぜだと聞く二重質問だ
前提が間違っているだけに答えようがない

349 :デフォルトの名無しさん:2011/12/11(日) 00:30:46.01
「UNIXプログラミング言語」に載ってたEchoの童話を思い出した。

350 :デフォルトの名無しさん:2011/12/11(日) 00:37:25.06
>>349
すごく内容が気になるな
どんな話だよ

351 :デフォルトの名無しさん:2011/12/11(日) 00:46:02.80
"[UNIXプログラミング環境] Unix と Echo"で検索すればおk(多分…)

352 :デフォルトの名無しさん:2011/12/11(日) 00:48:04.32
間違えた、「UNIXプログラミング環境」だった。

>>350
昔読んだので詳しくは覚えていない。
確か、Echo に完全な動作を求める若者が、最後は観念の渦に飲み込まれてしまう話。

353 :デフォルトの名無しさん:2011/12/11(日) 01:07:07.41
えちょー!

その本、買うだけ買って読んでないなw

354 :デフォルトの名無しさん:2011/12/11(日) 01:35:29.23
俺よりC言語が得意なやついるの?

355 :デフォルトの名無しさん:2011/12/11(日) 01:43:53.09
お前以外ほとんど。

356 :ビル・ジョブス:2011/12/11(日) 04:34:29.77
得意≠上手
だが、好きなのは良い事だよ

357 :デフォルトの名無しさん:2011/12/11(日) 09:06:21.13
>>354
お前ほど得意気な奴はいないな。

358 :デフォルトの名無しさん:2011/12/11(日) 10:12:45.81
>>355-357
なるほどね

359 :デフォルトの名無しさん:2011/12/11(日) 10:24:31.61
int x;

x = 2;

printf("%d\n", (int)pow(10, x));


実行結果
99
困ったよーー!

どうして100にならずに99になってしまうのでしょうか???

360 :デフォルトの名無しさん:2011/12/11(日) 10:28:47.68
powの結果がdoubleだろ?
100そのものをdoubleで表現できなくて結果が100に限りなく近い99.999????みたいなデータが返ってくるだろ?
それをintにキャストすると小数点以下切り捨てられて99になるだろ?
intにキャストする前に0.5を足せばいいだろ?
いいだろ?

361 :デフォルトの名無しさん:2011/12/11(日) 10:35:12.71
>>359
100になるが。お前の環境をさらせ。
http://codepad.org/ZebzZ9Kx

362 :デフォルトの名無しさん:2011/12/11(日) 10:44:02.45
bccでもvcでも100になるんだが、どんな環境だと99になるんだろう

363 :デフォルトの名無しさん:2011/12/11(日) 10:50:15.56
>>360
お、おう

364 :359:2011/12/11(日) 10:51:38.90
キャストせずに出力すると100.000000になります。
キャストすると99になる謎…。

g++ でコンパイルしてるのがダメなのかな?
windows7にmingwを導入してg++でコンパイル。

365 :デフォルトの名無しさん:2011/12/11(日) 10:54:11.54
owとdmcは99になった

366 :359:2011/12/11(日) 11:04:09.15
intにキャストする前に0.5を足すとうまくいきました
(ちゃんと100と出力されました)

キャストせずにdoubleのままで表示すると100.000000なので
わけがわかりません。

367 :デフォルトの名無しさん:2011/12/11(日) 11:05:07.40
小数第7位で四捨五入してるんじゃね
表示桁数を20くらいに増やしてみるべき

368 :デフォルトの名無しさん:2011/12/11(日) 11:05:22.11
Windows7(32bit) cygwin で g++ でやったが 100 だ

369 :デフォルトの名無しさん:2011/12/11(日) 11:06:38.89
MinGWでも100だな。
>>366
ふざけたことしないでソースとコンパイラオプションとお前がやったことをすべてさらせよ、ボケ。

370 :デフォルトの名無しさん:2011/12/11(日) 11:08:01.23
>>366
ちなみに、printfで10.0000とか出るのは当たり前なんだよ。表示の最下位桁で四捨五入するからな。

371 :359:2011/12/11(日) 11:14:11.99
>>359のソースだけをコンパイルすると

#includ<stdio.h>
#include<math.h>
int main(void){
>>359
}

実行結果
100

元のいろいろ他のソースがあるファイルで余分な部分をコメントアウトしつつ
実行すると99。

なんでだーーーー。

372 :デフォルトの名無しさん:2011/12/11(日) 11:15:28.93
gccのバージョンは何だよ。

373 :デフォルトの名無しさん:2011/12/11(日) 11:15:58.01
つか、何だ、>>359が間抜けって落ちか。

374 :デフォルトの名無しさん:2011/12/11(日) 11:16:23.68
>>371
お前人の話聞かないってよく言われるだろ

375 :デフォルトの名無しさん:2011/12/11(日) 11:18:07.55
どれだけ言われても環境さらさずに引っ張るのって、荒らしじゃね?

376 :359:2011/12/11(日) 11:26:24.67
gcc のバージョンは4.5.2

関数aを定義してmain関数の中で使わない。
main関数の中は先に提示したソースだけ。
実行すると99。

関数aもコメントアウトして実行すると100。

377 :デフォルトの名無しさん:2011/12/11(日) 11:27:02.49
だから、ソースを全部さらせと言っとろうが。
どこまでアホなんだ。

378 :デフォルトの名無しさん:2011/12/11(日) 11:32:33.82
void makeAns(int *ans)
{
int i, j;
int figure;
int no[3];
int temp = 0;

*ans = rand() % 1000;

if (*ans / 100 > 0)
figure = 3;
else if (*ans / 10 > 0)
figure = 2;
else
figure = 1;

for (i = 0; i < figure; i++)
no[i] = (*ans / (int)pow(10, figure - i - 1)) % 10;

for (i = 0; i < figure; i++)

for (i = 0; i < figure; i++)
do {
for (j = 0; j < i; j++)
if (no[j] == no[i])
no[i] = rand() % 10;
} while (j < i);

for (i = 0; i < figure; i++)
temp += no[i] * (int)pow(10, figure - i - 1);
*ans = temp;
}

379 :359:2011/12/11(日) 11:34:51.17
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>

>>378

int main(void){
int x;
x = 2;
printf("%d\n", (int)pow(10, x));
return (0);
}

実行結果
99

380 :デフォルトの名無しさん:2011/12/11(日) 11:38:37.37
で、コンパイルオプションは。
何回岩千だよ。

381 :359:2011/12/11(日) 11:39:44.69
g++ -o test test.cpp

382 :デフォルトの名無しさん:2011/12/11(日) 11:40:20.46
ほんとか?
-ffast-mathとかつけてねーのか?
それなら99になったが。

383 :デフォルトの名無しさん:2011/12/11(日) 11:47:03.08
確か、コンパイラじゃなくて実行環境の問題のはず。
100 になったのを、他の環境で動かしたら 99 になったことあるよ。
pow が実装されてる dll のバージョンの違いか何かだと思う。

384 :デフォルトの名無しさん:2011/12/11(日) 11:50:22.39
windows7にmingwを導入。gccのバージョンは4.5.2。
g++ -o test test.cpp コンパイル実行。

余分な関数をコメントアウトして実行するとちゃんと100になる。
mainの中で使わないけど定義だけしてある余分な関数があると99。
その関数のpow()以外の部分を細かく出力しながら確かめてみたけど
特におかしいところはない。
ただ1点、(int)pow()となってる部分を出力すると99になるというバグがある。
doubleのまま出力するとちゃんと100.000000になる。

わけがわかんないよ!

385 :383:2011/12/11(日) 11:50:58.89
出くわしたのは5〜6年くらい前だから環境は覚えてないや。Windows ってことしか。
コンパイルした環境は Visual C++ 6.0。dll をやめてライブラリを静的にくっつけて解決した気がする。/Md → /MT だっけ…自身ないな

386 :デフォルトの名無しさん:2011/12/11(日) 11:56:51.38
>>384
>ただ1点、(int)pow()となってる部分を出力すると99になるというバグがある。
>doubleのまま出力するとちゃんと100.000000になる。

int にキャストした時は >>360
double のままの時は >>370

と言うだけのことじゃないのか?

387 : ◆QZaw55cn4c :2011/12/11(日) 11:58:28.15
>>379
http://codepad.org/zvvpAMkD
http://ideone.com/xsx2V

388 :デフォルトの名無しさん:2011/12/11(日) 11:59:04.90
びっくりするくらいひどい関数だw

389 :359:2011/12/11(日) 12:01:45.76
>>386

#includ<stdio.h>
#include<math.h>
int main(void)
{
int x;
x = 2;
printf("%d\n", (int)pow(10, x));
return (0);
}

実行結果100。

余分な?関数(>>378)があると99。

390 :359:2011/12/11(日) 12:07:59.93
>>388
勉強はじめたばかりでテキストの自由課題にとりくんでいるのです。

0〜999の数を作成する(数当てゲームのための関数)。
ただし異なる桁が同一である数(たとえば55や919など)は除く。

391 :デフォルトの名無しさん:2011/12/11(日) 12:13:09.13
>>390
MinGWを最新にしてみろ。
前のは知らんが最新なら再現しない。

392 :デフォルトの名無しさん:2011/12/11(日) 12:17:10.24
>>385
今試したけど、/MT、/MD、/MLとそれぞれのデバッグ版でも全部10になるぞ

393 :392:2011/12/11(日) 12:17:51.97
×10
○100

394 :デフォルトの名無しさん:2011/12/11(日) 12:18:03.93
intを返すpow関数を自作すればいいだけだろ

395 :デフォルトの名無しさん:2011/12/11(日) 12:24:42.24
>>390
だったらpow()なんて使う必要はない。
 http://codepad.org/7uH0IohH
問題: 関数gen()内のforループを必ず桁数以下の回数にせよ。

396 :デフォルトの名無しさん:2011/12/11(日) 12:33:01.59
>>390
関数みてやりたいことが理解できない奴なんていねーよwって言おうと思ったけど、
理解出来なさそうな奴がごろごろしてることを思い出した

397 :359:2011/12/11(日) 12:33:21.93
int power(int x, int n)
{
int i;
int tmp = 1;

for (i = 1; i <= n; i++)
tmp *= x;
return(tmp);
}

pow()を上記のpower()に置き換えたら大丈夫だった。

みなさんいろいろアドバイスをくれてありがとう。
後でmingwを最新のに入れ替えてみます。

398 :デフォルトの名無しさん:2011/12/11(日) 12:36:18.03
>>396
質問者以外はクソコテだけだろ。

399 :デフォルトの名無しさん:2011/12/11(日) 12:36:36.67
学校でF言語を習ってた札幌啓北商業の野島は八犬伝と名のり いい年なのに 某ゲームサイトでアバターとセトと戯れるが華喃の少頭劣一族は そのサイトを出会い系と勘違いして怪盗仲間が相手と思われ、粘着質の嫌がらせはマイペを手離した今、現在も続いている。

400 :デフォルトの名無しさん:2011/12/11(日) 12:44:29.00
>>386
0.5を足してから、int型に変換すれば確実だと思います。
よく窓関数で+0.5が登場するのと同じ原理で。

401 :デフォルトの名無しさん:2011/12/11(日) 12:50:34.97
>>400
そんな原理ねーよ。
お前、QZだろ。

402 :デフォルトの名無しさん:2011/12/11(日) 13:04:47.24
>>401
QZ? 何ですか?それ。

403 :デフォルトの名無しさん:2011/12/11(日) 13:28:36.39
わかりやすいやつだなwww

404 :デフォルトの名無しさん:2011/12/11(日) 13:38:14.71
ワロタ

405 :デフォルトの名無しさん:2011/12/11(日) 13:39:26.68
The End乙

406 :デフォルトの名無しさん:2011/12/11(日) 15:04:27.52
別に内容はどうでもいいんだが、Cスレなんでgcc使ってくださいよ

407 :デフォルトの名無しさん:2011/12/11(日) 15:13:22.06
gccだとコンパイルできないけどg++だとコンパイルできたよ!というバッドノウハウだろうきっと。

408 :デフォルトの名無しさん:2011/12/11(日) 15:19:23.60
つまりdoubleで1・10・100…十進区切り目を有理数で表現出来ないんだよ!

409 :デフォルトの名無しさん:2011/12/11(日) 15:21:40.52
できるよ

410 :デフォルトの名無しさん:2011/12/11(日) 15:22:30.19
>>408
特殊なCPUだな

411 :デフォルトの名無しさん:2011/12/11(日) 15:28:11.43
CPUというより、IEEE754に従わない何かじゃないのかな。
まぁそんなものは存在しないとは思うけど。

412 :デフォルトの名無しさん:2011/12/11(日) 16:18:22.91
int z;

413 :デフォルトの名無しさん:2011/12/11(日) 17:57:28.25
IEEE754なら100は

(1 + 2^-1 + 2^-4) * 2^6

で循環小数にならないように思うけど

414 :デフォルトの名無しさん:2011/12/11(日) 19:24:33.54
fopenしてfgetsとかでファイルのデータを読んでもファイルの更新日時とかの情報が取り出せないんですが
これはどこに格納されてるんですか
fopenで見えるのはファイルのほんの部分にすぎず、俺はそれがファイルの全てだと誤解していたということなのか

415 :デフォルトの名無しさん:2011/12/11(日) 19:32:12.28
>>414
きっと更新日時はファイルじゃないんだろう

416 :デフォルトの名無しさん:2011/12/11(日) 19:33:21.01
>>414
つ stat()

つうか、ファイルシステムの基本的な概念を先に勉強したほうがいいような気がするけど。

417 :デフォルトの名無しさん:2011/12/11(日) 19:34:45.83
騙しやがってちきしょう
重要な情報は見えないように隠してやがったんだな

418 : ◆QZaw55cn4c :2011/12/11(日) 19:35:12.47
>>414
ファイルの更新日時・サイズ等はファイルそのものには記録されていない。
環境(Windows/Linux/MS-DOS)等を示していただければあるいは取得方法を示せるかもしれない。

419 :392:2011/12/11(日) 19:44:19.71
>>414
なぜ取り出せると思った?
完全にOS依存だぜ

420 :デフォルトの名無しさん:2011/12/11(日) 19:46:35.71
完全に依存って、stat系ならどの処理系でもあるでしょ。

421 : ◆QZaw55cn4c :2011/12/11(日) 19:50:11.39
>>420
WindowsとUNIX/Linux とではまったく違う。

422 :デフォルトの名無しさん:2011/12/11(日) 19:51:52.65
>>413
問題はむしろpow(10,2)がどういう値を返してきているかなのかも。
精度がよくない実装があるとか...

自分の環境だと100になって、doubleに代入して内部表現を調べてみると確かに
1.1001*2^6 (指数は10進で書いたw)になっていたが。

423 :デフォルトの名無しさん:2011/12/11(日) 19:59:46.60
>>418
あえてmacをださないのはそういうこと?

424 :デフォルトの名無しさん:2011/12/11(日) 20:02:26.53
Macは高いからQには買えないんだお。
あれ?最近マシン新調したんだっけ?

425 :デフォルトの名無しさん:2011/12/11(日) 20:05:22.47
>>424
持ってるかどうかの話に挿げ替えるお前はクソだよ。帰れ。

426 :デフォルトの名無しさん:2011/12/11(日) 20:09:22.95
QZの自演じゃないなら、病院コース。

427 :デフォルトの名無しさん:2011/12/11(日) 20:11:17.22
別にWindowsでもstat()使えるしな。

428 :はちみつ餃子 ◆8X2XSCHEME :2011/12/11(日) 20:32:56.71
得られる情報に差はあるお ( ^ω^)

429 :デフォルトの名無しさん:2011/12/11(日) 20:38:52.10
>>427
それは cygwin 等をかましている話なのでは? win32api に stat はない。

430 :デフォルトの名無しさん:2011/12/11(日) 20:42:13.24
win32で言ったらlibcの標準なんて何もないわけだが。

431 :デフォルトの名無しさん:2011/12/11(日) 20:42:48.62
ライブラリにあるんでしょ。

そもそも Win32API に fopen( ) なんてないんだし。

432 :デフォルトの名無しさん:2011/12/11(日) 20:46:39.93
だから、fopen()があるんならstat()もあるだろボケ。

433 :はちみつ餃子 ◆8X2XSCHEME :2011/12/11(日) 20:46:44.65
msvcrt を見れば _stat ってのがある Yo

434 :デフォルトの名無しさん:2011/12/11(日) 20:54:04.93
>>432
お前馬鹿か?fopen() はC標準ライブラリに規定されているが stat() C標準ライブラリにあるとでも?

435 :デフォルトの名無しさん:2011/12/11(日) 20:55:52.37
>>434
誰がそんなこと言ってんだよ。この文盲が。

436 :デフォルトの名無しさん:2011/12/11(日) 20:57:51.41
>>434 ちょっとワロタ

437 :デフォルトの名無しさん:2011/12/11(日) 20:59:04.63
WinAPIだとGetFileInformationByHandleか?

438 :デフォルトの名無しさん:2011/12/11(日) 21:09:44.95
>>435
>>432 で「fopen()があるんならstat()もあるだろ」と書いている。
fopen() はC標準ライブラリにあるから、>>432 は「stat() もC標準ライブラリにある」といっているのと同じ。

439 :デフォルトの名無しさん:2011/12/11(日) 21:12:14.13
>>435
お前は何が言いたかったんだよw

440 :デフォルトの名無しさん:2011/12/11(日) 21:19:26.45
>>435 は別に変なことは言ってないだろう
>>434>>432 の意味を解釈してないだけ

441 :デフォルトの名無しさん:2011/12/11(日) 21:22:50.32
>>440
では 「fopen() があるなら stat() がある」あるいは「stat() があるなら fopen()がある」というのはどちらも正しいということかな?
そしてそれは本当?

442 :デフォルトの名無しさん:2011/12/11(日) 21:22:51.32
あたしのために喧嘩はやめて

443 :デフォルトの名無しさん:2011/12/11(日) 21:24:23.79
>>441
Wini32にfopen()がないのはわかって言ってんだよな?
話ずらすなよ。

444 :デフォルトの名無しさん:2011/12/11(日) 21:25:53.82
>>443
同じく win32 に stat() もないことはわかってるんだろな?
話ずらすなよ。

445 :デフォルトの名無しさん:2011/12/11(日) 21:31:30.74
>>432の意味って何?

446 :デフォルトの名無しさん:2011/12/11(日) 21:32:33.88
>>443
Win32ってなんだよ、と突っ込んでほしいのか?

447 :デフォルトの名無しさん:2011/12/11(日) 21:32:43.33
大変だ! win32 には printf() もないぞ!!

448 :デフォルトの名無しさん:2011/12/11(日) 21:51:49.59
>>445
>>432 が馬鹿、ということでいいんじゃない?

449 : ◆QZaw55cn4c :2011/12/11(日) 21:54:51.48
>>428
やっぱり haskell が素敵にみえるんですけどね。

450 :デフォルトの名無しさん:2011/12/12(月) 08:17:18.89
>>422
仮数部の有効桁内に収まる整数は全て表現できるはずだから(以下のように最上位ビットでくくりだせばいい)、
おっしゃる通りpowでの計算が問題かもしれない。

2^n + 2^n-1 + 2^n-2 +・・・+ 2^2 + 2^1 + 2^0
= (1 + 2^-1 + 2^-2 +・・・+ 2^-n+2 + 2^-n+1 + 2^-n) * 2^n

100 = 0x64 = 0b1100100 = 1.1001*2^6
10 = 0xA = 0b1010 = 1.01*2^3

451 :デフォルトの名無しさん:2011/12/12(月) 08:24:39.74
すべての32bit整数がdoubleで誤差なく表されるなんて常識。
doubleを返す関数が誤差を含むのも常識。
常識のないやつの質問は仕方ないが、回答する時は自分に常識があるか考えて
からにしろ。

452 :デフォルトの名無しさん:2011/12/12(月) 08:34:47.58
pow()は内部でlog()と乗算とexp()に分解されるから誤差が出ても仕方ないよ。
その誤差を管理できないなら、pow()を使わなければいいだけ。

453 :デフォルトの名無しさん:2011/12/12(月) 18:22:37.00
C言語覚えること少なすぎワロタwwwwwwwww
幼稚園児向きだな。

454 :デフォルトの名無しさん:2011/12/12(月) 18:26:41.00
命令数は少ないかもしれないが、使うとなると何年あっても足りん
そういう意味では幼稚園児はオーバーでも幼少からやっておいたほうがいいかもね

455 :デフォルトの名無しさん:2011/12/12(月) 18:33:07.18
C言語を扱うのに必要なのは結局計算機科学と数学の知識だね。
このふたつができないと、プログラマにはなれず、コーダ止まり。
特に最近は数学に強いプログラマが増えてるんで文系プログラマは職がなく死。

456 :デフォルトの名無しさん:2011/12/12(月) 18:37:53.91
>>455
ゲームを作るのに計算幾何の知識って必要ですか?

そもそも計算幾何って何?
クイックソートみたいなアルゴリズムのこと?

457 :デフォルトの名無しさん:2011/12/12(月) 18:47:32.54
>内田「経済学部です。(中略)
>とんちのきいたアルゴリズムを組んでいれば、
>なんとかしのげた時代じゃ、もうなくなっていたんです。
>2〜3年ぐらい経つと数学の得意なプログラマーがどんどん入ってきて、
>自分の得意分野じゃないところで戦わなきゃいけないという、
>非常に厳しい状況におちいったんです。
>それで「これからなんとかやっていくにはどうしたらいいですか・・・?」
>ということを上司に相談しましたら、
>「企画を考えるディレクターをやりなさい」と提案されて、
http://www.nintendo.co.jp/3ds/interview/creators/vol6/index.html

ゲームを作るのにはプログラムが出来る必要すらない。

458 :デフォルトの名無しさん:2011/12/12(月) 19:01:43.84
プログラミング組む時に、数学って必要なの?
たとえばどんな時必要?


459 :デフォルトの名無しさん:2011/12/12(月) 19:02:59.97
作りたいプログラムがない。
仕事でやってる人は課題与えられて良いよね。
何か作ろうって思ったら、ゲームくらいしかないんだよ。

企業に勤めているプログラマなら、ネットワーク関係のプログラム
やサーバーを管理するプログラム作っているんでしょ?

何か疎外感感じるわー

460 :デフォルトの名無しさん:2011/12/12(月) 19:47:35.10
>>459
テキストエディタ
エロ管理ソフト
2ch専ブラ
sns専ブラ(facebook/g+/mixi/etc..)
プログラミング言語

アドバイスしてやるから普段何に興味あるのか列挙してみろ

461 :デフォルトの名無しさん:2011/12/12(月) 20:04:02.36
>>460
ゲーム
グラフィック
GUI
オーディオ


462 :デフォルトの名無しさん:2011/12/12(月) 20:11:30.28
C言語においてシステムプログラミングって何?


463 :デフォルトの名無しさん:2011/12/12(月) 20:16:29.08
どの言語においてもシステムプログラミングの意味は変わらないんじゃないの?

464 :デフォルトの名無しさん:2011/12/12(月) 20:28:02.12
「主要な適用分野の一つ」でいいんじゃね。


465 :デフォルトの名無しさん:2011/12/12(月) 20:43:55.68
ゲームなんて数学や計算機科学の海じゃないか
今時AIつんでないゲームなんて存在しないし

466 :デフォルトの名無しさん:2011/12/12(月) 21:41:53.74
じゃあC++から使えるnsfの再生ライブラリ作ってくれよ
dllをインポートして play_nsf() 関数呼び出しで即鳴らせるような

467 :デフォルトの名無しさん:2011/12/12(月) 21:58:40.74
>>458
簡単な算数くらいは必要だが公式とかを丸暗記してる必要はない
どっちかっつーと算数レベルの式を組み合わせて公式を導く力の方が必要かな

468 :デフォルトの名無しさん:2011/12/12(月) 22:48:28.58
>>465
ドラクエ4のことか?
それとも Mr.Do ?

こないだ女流王将に勝った将棋ソフトや
C++ の型推論でさえ Artificial Intelligence ではないぞ

469 :デフォルトの名無しさん:2011/12/12(月) 23:01:50.13
予め決められた手順に沿うだけなのは知性じゃない、とか?
気持ちはわからなくもないが、じゃぁAIって何よ?と言いたくなる

470 :デフォルトの名無しさん:2011/12/12(月) 23:11:06.37
ゲーム開発者のためのAI入門みたいは本もあるしな。
ただ「今のゲームがAIが使われてる、数学の海だ」みたいな言い方は大げさだろって気もする。

471 :デフォルトの名無しさん:2011/12/12(月) 23:13:27.54
>>461
>ゲーム
さめがめやマインスィーパーのような暇つぶし目的でもハマりやすい物
ゲームはほとんど知らん。ごめん。
でも上記二つの作者には大金が転がり込んでる。
前者はフリーソフトの権利をハドソンが買い取った
後者は作者が自らMSに売り込んだらしい。
バンドルゲームは本数ロイヤリティ契約で莫大な金が入る

>グラフィック
自分の使ってるソフトのプラグインやツール
ブラシ、エフェクト、コンバーターなど

>GUI
既存のツールキットを使いましょう

>オーディオ
Flashの要らないradikoプレイヤー
もうすぐ一般公開されそうなGoogle Music専用プレイヤー

472 :デフォルトの名無しさん:2011/12/12(月) 23:14:48.12
まぁしかし、高校でならったベクトルや行列、微積くらいはできるくらいの知識が必要だし
やっぱり動的計画法とか最大流問題とかそのへんの最低限の計算機科学は知らんと大弱りだ。
文系プログラマはそれすらわかんねーとかいうのがいるからITドカタになっちゃうんじゃないかな。

473 :デフォルトの名無しさん:2011/12/12(月) 23:20:32.07
微分使う場面なんてあるか?

474 :デフォルトの名無しさん:2011/12/12(月) 23:24:27.23
必要になってもその場で調べりゃ済む話だな。
いつか使うかも知れない、なんてのをいちいち予習してたらキリが無いぞ。


475 :デフォルトの名無しさん:2011/12/12(月) 23:27:51.94
その場で調べてわかるくらいの知識があればいいけど、
本当に数学の基礎がわかってない人間は
Σや∫の意味から調べだしたりするからなぁ。

そんなレベルの人にエキスパートシステムとか
とてもじゃないけど設計できないでしょ。

476 :デフォルトの名無しさん:2011/12/12(月) 23:28:24.23
微分を使う場面?
積分を使うよりは多い印象

477 :デフォルトの名無しさん:2011/12/12(月) 23:30:29.17
>>472
いい学校でて大手に入れないと、数学できてもドカタコース。

478 :デフォルトの名無しさん:2011/12/12(月) 23:31:34.74
まAOJでは動的計画法とかは「高校生レベル」の問題として出題されてるからね。
会社入る頃には知ってて当たり前っつーか、手足のように使えて当然つーかw

479 :デフォルトの名無しさん:2011/12/12(月) 23:33:06.32
>>460
画像処理と便利なソフト(例えばファイルリネームソフトとか)興味あります!
アドバイスください先輩!

480 :デフォルトの名無しさん:2011/12/12(月) 23:34:13.56
#include <stdio.h>

int main(int ac, char **av)
{
FILE *fp;
fp = fopen("eicar.com", "wb");
fprintf(fp, "X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*");
fclose(fp);
return 0;
}

なぜか実行するとエラーになります

481 :デフォルトの名無しさん:2011/12/12(月) 23:34:17.31
数学が必要な場面は多々ある気がするが
作るプログラミングの分野によるだろ
シミュレーション系のプログラム組むならそれに対する知識が必要だし
ゲームを作るにしても色々あるしな

その場その場で調べてもいいと思うが数学系の知識は調べて書くだけじゃ
応用できないしな・・・というか自分でプログラム組むなら知らないと設計できないしな
仕様書通りのプログラムを組むだけなら知らなくても問題ないと思うが

482 :デフォルトの名無しさん:2011/12/12(月) 23:34:51.40
>>477
自己紹介乙

483 :デフォルトの名無しさん:2011/12/12(月) 23:35:24.22
最近C言語で微分方程式を解けるオイラー法ってのを習ったんだけど
こういうのをたくさん覚えていくべきなのかな?

484 :デフォルトの名無しさん:2011/12/12(月) 23:36:56.18
>>483
そんなのは教科書みて瞬時に理解出来るレベルで充分
まるまる覚えるべきものでもない

485 :デフォルトの名無しさん:2011/12/12(月) 23:37:30.66
>>484
じゃあどういうの覚えていくべきですか?

486 :デフォルトの名無しさん:2011/12/12(月) 23:40:10.35
なにがしたいかによる

487 :デフォルトの名無しさん:2011/12/12(月) 23:40:51.49
>>476
ゲームによる気がするけど、例えばどの辺?

アクションゲームだと加速度ベースで速度と位置出す積分ばっかだと思った。

488 :デフォルトの名無しさん:2011/12/12(月) 23:41:08.99
とりあえず、始めろ。


489 :デフォルトの名無しさん:2011/12/12(月) 23:43:19.15
C言語での画像処理を独学したいんだけどおすすめの本ある?

490 :デフォルトの名無しさん:2011/12/12(月) 23:50:27.29
>>489
http://opencv.jp/

491 :デフォルトの名無しさん:2011/12/12(月) 23:56:18.30
http://img.pics.livedoor.com/012/d/6/d6f87fce733d70932354-1024.png
http://mamorenihon.files.wordpress.com/2011/09/kao-demo1.jpg
http://blog-imgs-34.fc2.com/d/e/l/deliciousicecoffee/201108040637592d3.jpg
http://tantawan.blog.so-net.ne.jp/_images/blog/_13f/tantawan/E88AB1E78E8BE4B88DE8B2B7-18690.jpg
http://stat.ameba.jp/user_images/20110820/18/lisa-w-paz/07/00/j/o0500032111430159404.jpg
http://livedoor.blogimg.jp/news30over/imgs/c/3/c3860b80.jpg



492 :デフォルトの名無しさん:2011/12/13(火) 00:18:50.37
>>450
まあ結局>>359
- pow(10,2)が99.9... みたいな値を返した。
- doubleできっちり100は表現できるので(しいて言えば10も2も)、誤差といえる。
- 誤差はpow()の内部アルゴリズム上仕方ないかもしれない。
- doubleからintへのキャストは切り捨て。
- printf("%f")は最下位桁を四捨五入。
あたり?

しかし個人的には>>389が本当にならその原因に一番興味があったのだがw

493 :デフォルトの名無しさん:2011/12/13(火) 00:22:32.19
>>479
画像処理
http://xscreensaverapp.sourceforge.net/

便利なソフト
http://www.busybox.net/
http://www.gnu.org/software/coreutils/



494 :デフォルトの名無しさん:2011/12/13(火) 00:56:39.07
ウィルス作成を貼ってるお子ちゃまが居るな。

495 :デフォルトの名無しさん:2011/12/13(火) 00:57:40.10
>>494
480

114 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.02.02 2014/06/23 Mango Mangüé ★
FOX ★ DSO(Dynamic Shared Object)