/*10バイトのメモリ領域を確保し、その領域に文字列"Allocate"を代入せよ。*/
/*ただし、確保した領域は、プログラム終了までに開放すること。*/
#include<stdio.h>
#include<stdlib.h>
void main(void)
{
char *ptr;
ptr = (char *)malloc(10);
printf("Allocate\n");
free(ptr);
}
今、ライブラリ関数を勉強しています。
この問題をとりあえず作ってみて、実行も成功したのですが、10バイトのメモリ確保の数値を変えても、何も変わらないため本当に問題の要求どおりのプログラムが作れているのか謎です。
間違っているなどのアドバイス宜しくお願いします。
No.1ベストアンサー
- 回答日時:
間違っているのは
1.文字列の代入を行っていない.
2.printfで表示させるのはptrであるべき.
の2点だと思います.
最初に
char pre_copy[] = "Allocate";
などと,コピー元文字列を作成しておき,
mallocでptrのメモリ領域の確保を行ったら,
strcpyなどを用いてpre_copyからptrの領域へ文字列コピーしてみてください.
その後,
printf("%s\n",ptr);
を記述し,コンパイルして実行してみてください..
十分な量をメモリ領域を確保していない場合に,エラーが出ます.
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# const char** p;のとき、free(p)でC4090エラーとなるのはなぜですか 3 2023/03/31 16:28
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- C言語・C++・C# スタックフレームの消滅 6 2023/05/20 12:33
- C言語・C++・C# Cのdoubleの浮動小数点表示について 3 2023/04/17 13:14
- C言語・C++・C# 宣言する関数の形が決まっている状態で、 str1とstr2の文字列をこの順に引っ付けてstrに保存し 2 2022/05/30 18:21
- C言語・C++・C# C言語の質問です。 以下の命令を実行するプログラムを作りました ①文字列aとbの長さを表示 ②aとb 1 2022/04/29 15:35
- C言語・C++・C# C言語初心者 構造体 課題について 2 2023/03/10 19:48
- C言語・C++・C# 至急教えてください。プログラミングの問題です。 malloc関数を使ってください!お願いします! 最 1 2022/07/21 09:28
- C言語・C++・C# c言語でユーザ関数を利用して入力された文字列を反転させるプログラムを作りたいです。 3 2023/01/29 19:47
- C言語・C++・C# プログラミングの問題です。至急教えてください。 /***から***/の部分をプログラミングにしてほし 1 2022/10/13 11:48
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
c言語のポインタへの文字列入力...
-
mallocについて
-
reallocについて
-
malloc呼び出し時のセグメンテ...
-
64ビットと32ビットの違い
-
mallocで確保するメモリの領域...
-
gcnew arrayによるメモリ確保に...
-
malloc、new のメモリ確保について
-
ビットをローテートするプログ...
-
stringの最大サイズ
-
大容量の静的な確保の限界値
-
座標値を読み込んである領域に...
-
MSDNがgethostbynameではなくge...
-
char*型が0x0を含む場合
-
DLLのマルチスレッドの動作につ...
-
メモリ不足になってしまう。
-
配列の添え字の最大数とは?
-
スタック破壊の上手な見つけ方...
-
OpenCV cvLoadImageについて
-
allocってなんですか?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
newしないオブジェクトについて
-
allocってなんですか?
-
スタック破壊の上手な見つけ方...
-
ヒープメモリの解放について
-
配列の添え字の最大数とは?
-
void*型のデータサイズ
-
c言語のポインタへの文字列入力...
-
DLLのマルチスレッドの動作につ...
-
C++で、メンバもヒープに確保さ...
-
指定したメモリアドレスの値の...
-
win32APIのHeapAlloc()の使い方...
-
ポインタのポインタの初期化法
-
プログラムが途中で強制終了し...
-
大容量の静的な確保の限界値
-
malloc呼び出し時のセグメンテ...
-
ヒープ領域の限界値設定
-
free関数で動作が止まる
-
stringの最大サイズ
-
64ビットと32ビットの違い
-
LPWSTRのコピー
おすすめ情報