و آخرین سوال
فرق printf و fprintf چیه؟
کلا شد 3 تا سوال
دارین زحمت می کشین جواب میدین یه نگاه به 2 نا پست بالایی هم بندازین
خدا خیرتون بده
Printable View
و آخرین سوال
فرق printf و fprintf چیه؟
کلا شد 3 تا سوال
دارین زحمت می کشین جواب میدین یه نگاه به 2 نا پست بالایی هم بندازین
خدا خیرتون بده
stderr کا رخاصی نمی کنه! فقط خروجی رو به جای اینکه به خروجی استاندارد بره، به خروجی ارور می ره و برنامه متوقف می شه. البته معمولاً خروجی اررور و خروجی استاندارد هر دو مانیتور هستن! ولی میشه مثلاً خروجی اررور رو پرینتر کرد تا ارور ها توی پرینتر نوشته بشن.
shaSuccess هم که توی این تابع تغییر نمیکنه. توی توابع دیگه بگردید.
fprintf مخفف file printf هست. یعنی برای نوشتن توی فایل. ولی اگه به جای آدرس فایل آدرس خروجی استاندارد (مانیتور) رو بدی عینه همون printf کار میکنه.
جدا مرسی
خدا خیرتون بده
ولی اگه قرار باشه مقدار shaSucess تغییر نکنه پس چرا این مقدار return میکنه
آخه بعد اینکه این تابه احرا شد در برنامه اصلی هم چین کدی داریم
مفدار برگشت داده شده از تابع sha1reset داخل err میرهکد:err = SHA1Reset(&sha);
if (err)
{
fprintf(stderr, "SHA1Reset Error %d.\n", err );
break; /* out of for j loop */
}
آگه قرارا باشه مقدار sucess همیشه(تو این تابع) صفر باقی بمونه
پس هیچ وقت if اجرا نمیشه!!!!!!!!
قبل از این کد ذیگه هیجا ُSucess مقدار دهی نشده اولین جا همین جاست
جدا مرسی
خدا خیرتون بده
ولی اگه قرار باشه مقدار shaSucess تغییر نکنه پس چرا این مقدار return میکنه
آخه بعد اینکه این تابه احرا شد در برنامه اصلی هم چین کدی داریم
مفدار برگشت داده شده از تابع sha1reset داخل err میرهکد:err = SHA1Reset(&sha);
if (err)
{
fprintf(stderr, "SHA1Reset Error %d.\n", err );
break; /* out of for j loop */
}
آگه قرارا باشه مقدار sucess همیشه(تو این تابع) صفر باقی بمونه
پس هیچ وقت if اجرا نمیشه!!!!!!!!
قبل از این کد ذیگه هیجا ُSucess مقدار دهی نشده اولین جا همین جاست
و سوال بعدی
بالای این برنامه من که اسمtest یه header به اسم sha1 به شکل زیر است
کد:#include "sha1.h"
حالا خود این sha1 برنامه ای است که من کدشو دارم
حالا که می خوام برنامه test کامپایل کنم error میگیره که sha1 نمیشناسه
چی کار کنم که بشناسه؟؟؟؟
البته اینم بگم که داخل sha1.h فقط یک سری اعلان تابع و متغیر هست که کد کامل تابع در فایل sha1.c
هست میشه بگین این سخ تارو چه طور به هم ربط بدم
من یه قسمت کدی از هر کدومم قرار میدم
سر فایل sha1.h
حالا تعریف کامل تابع و سایر چیزا داخل sha1.c هستکد:#ifndef _SHA1_H_
#define _SHA1_H_
#include <stdint.h>
int SHA1Reset( SHA1Context *);
int SHA1Input( SHA1Context *,
const uint8_t *,
unsigned int);
int SHA1Result( SHA1Context *,
uint8_t Message_Digest[SHA1HashSize]);
#endif
اینم ابتدای کد test منکد:#include "sha1.h"
/*
* Define the SHA1 circular left shift macro
*/
#define SHA1CircularShift(bits,word) \
(((word) << (bits)) | ((word) >> (32-(bits))))
int SHA1Reset(SHA1Context *context)
{
if (!context)
{
return shaNull;
}
context->Length_Low = 0;
context->Length_High = 0;
context->Message_Block_Index = 0;
context->Intermediate_Hash[0] = 0x67452301;
context->Intermediate_Hash[1] = 0xEFCDAB89;
context->Intermediate_Hash[2] = 0x98BADCFE;
context->Intermediate_Hash[3] = 0x10325476;
context->Intermediate_Hash[4] = 0xC3D2E1F0;
context->Computed = 0;
context->Corrupted = 0;
return shaSuccess;
}
کد:#include <stdint.h>
#include <stdio.h>
#include <string.h>
#include "sha1.h"
/*
* Define patterns for testing
*/
#define TEST1 "abc"
#define TEST2a "abcdbcdecdefdefgefghfghighijhi"
سلام
میشه بگید کار کد زیر چیه؟
یعنی قسمت messeage-array & 0XFF * نمیفهممکد:context->Message_Block[context->Message_Block_Index++] =
(*message_array & 0xFF);
که Message-array به شکل زیر است اسمه دیگه متغیر testarray است
کد:char *testarray[4] =
کد:
{
TEST1,
TEST2,
TEST3,
TEST4
};
و مقدار test1, test2به شکل زیر استکد:
#define TEST1 "abc"
#define TEST2a "abcdbcdecdefdefgefghfghighijhi"
#define TEST2b "jkijkljklmklmnlmnomnopnopq"
#define TEST2 TEST2a TEST2b
من منتظر هستم
فردا تحویل پروژه دارم
سلام
اگه وقت نکردین و نتونستین سوال های آخر منم جواب بدین اشکال نداره
خیلی کمکم کردین
خدا خیرتون بده
من پروژمو تحویل دادم