C语言指针有关问题,麻烦哪位大神帮看看代码为什么输出乱码
C语言指针问题,麻烦哪位大神帮看看代码为什么输出乱码
#include <stdio.h>
#include <string.h>
char *m_strcpy(char *strDest, const char *strSrc)
{
if (strDest == NULL && strSrc == NULL)
return NULL;
if (strDest == strSrc)
return strDest;
char *temp = strDest;
while ((*strDest++ = *strSrc++) != '\0')
return temp;
}
int main()
{
char me[30] = "what is your name?";
char srcme[30];
char *what = m_strcpy(srcme, me);
printf("%s\n",what);
return 0;
}
------解决方案--------------------
这里出问题了。
while ((*strDest++ = *strSrc++) != '\0')
return temp;
------解决方案--------------------
(1) :
while ((*strDest++ = *strSrc++) != '\0');
return temp;
while 行缺少 ";"
(2) :
if (strDest == NULL && strSrc == NULL) // 这里应该是
------解决方案--------------------
不是 &&
return NULL;
#include <stdio.h>
#include <string.h>
char *m_strcpy(char *strDest, const char *strSrc)
{
if (strDest == NULL && strSrc == NULL)
return NULL;
if (strDest == strSrc)
return strDest;
char *temp = strDest;
while ((*strDest++ = *strSrc++) != '\0')
return temp;
}
int main()
{
char me[30] = "what is your name?";
char srcme[30];
char *what = m_strcpy(srcme, me);
printf("%s\n",what);
return 0;
}
C
指针
乱码
------解决方案--------------------
这里出问题了。
while ((*strDest++ = *strSrc++) != '\0')
return temp;
------解决方案--------------------
(1) :
while ((*strDest++ = *strSrc++) != '\0');
return temp;
while 行缺少 ";"
(2) :
if (strDest == NULL && strSrc == NULL) // 这里应该是
------解决方案--------------------
不是 &&
return NULL;