【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
たかぎ

【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#1

投稿記事 by たかぎ » 15年前

連続質問失礼します。

sizeofを関数だと考えている人はどれぐらいいますか?

皆さんご自身のことや周りの人の状況など、何でもよいので情報をください。
また、return, throw, typeidが関数だと考えている人についての情報もあわせて教えてください。

たいちう

Re:【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#2

投稿記事 by たいちう » 15年前

sizeofが関数じゃないと読んだのは、覚えたての頃でした。

returnを関数と思ったことはないですが、return(0);などはよく目にしますね。
その人たちは関数と思っている、というよりは、
どちらかというと何も考えていない人の方が多いと思います。
(あくまでも私の印象。以降も)

throwについてですが、例外を受け取るだけでなく、
投げる側のプログラムを書く人については、
関数と勘違いしている人は殆どいないと思います。

typeidは私は使いませんし、特に意識したこともなかったです。
他人の書いたtypeidを読んだ覚えもありません。
(入門書のような本で見かけていたとしても記憶に残っていない)

たかぎ

Re:【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#3

投稿記事 by たかぎ » 15年前

> たいちうさん

ご意見ありがとうございます。

Googleで「C言語 "sizeof関数"」を検索すると、多いとはいいませんが、それなりの数がヒットします。
ちなみに、「"sizeof関数"」だけだと、PHPに関する記述が大量にヒットするのであてになりません(PHPではsizeofは関数なので)。

> returnを関数と思ったことはないですが、return(0);などはよく目にしますね。
> その人たちは関数と思っている、というよりは、
> どちらかというと何も考えていない人の方が多いと思います。

そうですね。
これについては、ずいぶん前に「returnのプロトタイプ宣言はどのヘッダにあるのですか?」という質問を受けたことがあります。
その質問をした人物は、そんなによくわかっているとはいいませんが、何も考えていないというほどひどくもなかった気がします。

> throwについてですが、例外を受け取るだけでなく、
> 投げる側のプログラムを書く人については、
> 関数と勘違いしている人は殆どいないと思います。

sizeofやtypeidと違って、必ずオペランドに式を取りますので、throw(x)のように括弧を常に付ける人であれば、関数と誤解しそうなもんですが...
まあ、throwを使うのはそれなりにわかっているプログラマということかもしれませんね。

> typeidは私は使いませんし、特に意識したこともなかったです。
> 他人の書いたtypeidを読んだ覚えもありません。

確かにtypeidの遭遇頻度は少ないですね。
throw以上に、わかっている人しか使わないのかもしれません。

Tororo

Re:【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#4

投稿記事 by Tororo » 15年前

VC++ を使っていて、色の設定を変えてあるので
予約語?(int for)等は違う色になっているので、関数ではないと思っています。

関係ないかもしれませんが、return(0) と言うのは (0)を返しているのか、0を返しているのかが、
よく分かっていません。

たかぎ

Re:【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#5

投稿記事 by たかぎ » 15年前

> VC++ を使っていて、色の設定を変えてあるので
> 予約語?(int for)等は違う色になっているので、関数ではないと思っています。

確かにそういうこともありますね。

> 関係ないかもしれませんが、return(0) と言うのは (0)を返しているのか、0を返しているのかが、
> よく分かっていません。

0と(0)は表記以外の違いはありませんね。

たかぎ

Re:【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#6

投稿記事 by たかぎ » 15年前

そういえば、「苦しんで覚えるC言語」のようなサイトでも、下記では、「配列の要素数を知るには、sizeof関数を使用するのが簡単で確実です。」と記述していますね。
http://9cguide.appspot.com/22-01.html#S2

Poco

Re:【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#7

投稿記事 by Poco » 15年前

私の周りにはいません(と思いたい!)。
#いたら矯正します。。

たかぎ

Re:【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#8

投稿記事 by たかぎ » 15年前

> 私の周りにはいません(と思いたい!)。
> #いたら矯正します。。

了解です。ありがとうございました。

ムンバ

Re:【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#9

投稿記事 by ムンバ » 15年前

こんばんは!

私は今、勉強してる本の中に出てくる関数や演算子(配列)やキーワード?など
今まで勉強してきた復習も兼ねて、最初のページから出てきた順に
関数や演算子・配列やポインタや構造体などなどの例をあげながら
自分だけが見やすい様に、自分のページにまとめながら本の勉強を進めてます。
すぐ忘れちゃうから、こうしてます。(涙
ですので最近、こちらの掲示板で質問させて頂いた内容は
過去に読んだ本や、検索しまくったサイトで、自分なりにまとまりが付かず
こちらの掲示板でお聞きすれば、何とかまとまりが付くんじゃないかと・・・
甘えてるんですよね。こちらでお答え頂くと、自分の中でまとまりが付くんです。
何故か安心できるんですよね。^^
連投気味になってしまっておりますが、自分も必死ですのでご容赦お願い致します。

私が、リンク先のアドレスの頭の H を削除するのは(こちらのBBSは、見てる方が多いので)
リンク先のサイト(サーバー)に集中してアクセスされるのを防ぐためのみの理由からです。
でっ、たかぎさん。御忙しい所、また日記みたいになってしまい、ごめんなさい。(謝
------------------------------------------------------------------------------------

sizeof
 分類は、(自分では)今の所「演算子」と理解しています。
 参考サイト http://www.skpme.com/c/c_sizeof.shtml
   (↑こちらのサイト、サイト内の内容を引用する場合などは許可が必要との事です。)

return
 分類、調べるの忘れてました~!今から調べまくります。
 return って、あるのが当たり前の様に使っていたので・・・。
 return については
 「関数の最終行に居て、値を返すやつ(奴)」としか思ってませんでした。^^;

throw, typeid につきましては、まだ勉強していませんので、すみません。

たかぎ

Re:【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#10

投稿記事 by たかぎ » 15年前

> 私が、リンク先のアドレスの頭の H を削除するのは(こちらのBBSは、見てる方が多いので)
> リンク先のサイト(サーバー)に集中してアクセスされるのを防ぐためのみの理由からです。

うちのサイトにここ経由で来る数を見る限り、大したことはありません。
OKWaveや知恵袋やWikipediaや2ちゃんねるからも来ますが、いずれも大したことはありません。
ですので、そんなに気を使う必要はありません。

> sizeof
> 分類は、(自分では)今の所「演算子」と理解しています。

了解です。
ほかについても調べてみてください。

ムンバ

Re:【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#11

投稿記事 by ムンバ » 15年前

速っ!(爆

>>(略)ですので、そんなに気を使う必要はありません。
 了解しました!

 今から、return 行ってきま~す!

---追記---
 上述、sizeofについて紹介させて頂いたサイト
 一部の引用でしたら、許可は必要なかったです。
 お詫びして、訂正させて頂きます。(謝

画像


たかぎ

Re:【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#13

投稿記事 by たかぎ » 15年前

> シエルさん

> 関数だと思ってました…

こういう意見を待っていました(変な意味ではなく)。
ありがとうございます。

Dixq (管理人)

Re:【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#14

投稿記事 by Dixq (管理人) » 15年前

> こういう意見を待っていました

きっとここで10人中9人が「知っていた」と答えたとしても全体の9割が知っているだろうという推測は出来ないんでしょうねぇ。
・・なんてことは既に想定の範囲内でしょうけど。

なかなか「知っている」ことはアピール出来ても「知らない」ことをわざわざアピール出来ない場合が多いですもんね。
後、雑談トピに書きこむ人は普段の質問者より回答者の方が多い傾向にあることからも、偏っちゃいますね。
なのでシエルさんのようなコメントって有り難いですね。

私はというと、tororoさんの仰るようにVC++では青くなるので知っていた程度でしょうか。

最近VIエディタばかり使うのでこういう便利な機能が懐かしいです・・。

たかぎ

Re:【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#15

投稿記事 by たかぎ » 15年前

> Dixqさん

> きっとここで10人中9人が「知っていた」と答えたとしても全体の9割が知っているだろうという推測は出来ないんでしょうねぇ。

その通りです。

> なかなか「知っている」ことはアピール出来ても「知らない」ことをわざわざアピール出来ない場合が多いですもんね。
> 後、雑談トピに書きこむ人は普段の質問者より回答者の方が多い傾向にあることからも、偏っちゃいますね。
> なのでシエルさんのようなコメントって有り難いですね。

そうなんですよ。
得られた結果をそのまま統計するのは愚の骨頂なのでもちろんやりませんが、どの程度のバイアスが掛かっているのか見極めるのはなかなか大変です。

> 私はというと、tororoさんの仰るようにVC++では青くなるので知っていた程度でしょうか。

結構あの色分けに誘導されるもんなんですね。
だとすると、MSの独自拡張のキーワードと標準のキーワードの区別がつかなくなったりしませんか?

> 最近VIエディタばかり使うのでこういう便利な機能が懐かしいです・・。

色分けはともかく、インテリセンスに頼り切っていた人とかだと、viではコーディングできないでしょうね。

あ~る

Re:【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#16

投稿記事 by あ~る » 15年前

恥ずかしさを抑えて書き込み書き込み
僕も関数だと思ってました・・・
()で囲ってるから標準で実装されてる関数だと思ってました。

あ、あと言い訳ですがどこかのサイトにも関数って書いてあった気が(ry

たかぎ

Re:【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#17

投稿記事 by たかぎ » 15年前

> あ~るさん

> 恥ずかしさを抑えて書き込み書き込み

そんなに自虐的にならなくても...

> 僕も関数だと思ってました・・・
> ()で囲ってるから標準で実装されてる関数だと思ってました。

そう考える人は多いですね。
種明かしをすると、sizeofのオペランドを括弧で囲まなければならないのは型名の場合だけです。
つまり、

sizeof(int); /* ← 括弧が必要 */

int a;
sizeof a; /* ← 括弧は不要 */

ということになります。

> あ、あと言い訳ですがどこかのサイトにも関数って書いてあった気が(ry

例えば↓とか
http://support.microsoft.com/kb/60332/ja
本文はsizeof演算子なのに、なぜか見出しは「sizeof()関数」です。

レッドリ

Re:【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#18

投稿記事 by レッドリ » 15年前

自分もsizeofは関数と思っていました。
演算子でしたか。
ZeroMemoryが関数なのでそこから勘違いしていたようです。

たかぎ

Re:【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#19

投稿記事 by たかぎ » 15年前

> レッドリさん

> ZeroMemoryが関数なのでそこから勘違いしていたようです。

すみません。sizeofとZeroMemoryがどう結びつくのかがわかりませんでした。

Tororo

Re:【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#20

投稿記事 by Tororo » 15年前

横槍ですが
レッドリsの言いたい事は、

struct A{
int b;
int c;
};
A test[10];
ZeroMemory(test, sizeof(A)*10);//初期化
          ↑こんな感じの事ですか?


違っていたらごめんなさい^^;


たかぎ

Re:【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#22

投稿記事 by たかぎ » 15年前

> ZeroMemory(test, sizeof(A)*10);//初期化
>           ↑こんな感じの事ですか?

なるほど。
結論からすれば全然関係ないのですが、ここから類推したということですね。

たかぎ

Re:【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#23

投稿記事 by たかぎ » 15年前

このあたりでいったん解決にしておきますが、何かありましたらよろしくお願いします。

ムンバ

Re:【雑談】 sizeofを関数だと考えている人はどれぐらいいますか?

#24

投稿記事 by ムンバ » 15年前

こんばんは。
お返事、遅くなりました。

return
 呼び出しもとの関数にreturnの後ろの
 数値または変数の値を渡して関数を終了する文。

分類するとすると、if文やwhile文の様な「文」という事でした。
「猫でもわかるC言語・・・」内でも、return文と表現されていました。

---↓編集・追記---

書き忘れてました。
分岐文とか制御文(breakなど)と分類してるサイトもありました。

---↑編集・追記---

今日は、書き捨てで失礼します!
勉強せねば。^^
お疲れ様です! 画像

閉鎖

“C言語何でも質問掲示板” へ戻る