64,654
社区成员
发帖
与我相关
我的任务
分享
//反转链表
ListNode* ReverseIteratively(ListNode* pHead)
{
ListNode* pReversedHead = NULL;
ListNode* pNode = pHead;
ListNode* pPrev = NULL;
while(pNode != NULL)
{
ListNode* pNext = pNode->m_pNext;
if(pNext == NULL)
pReversedHead = pNode;
pNode->m_pNext = pPrev;
pPrev = pNode;
pNode = pNext;
}
return pReversedHead;
}
char * upper(char *str) {
char *dest = str;
while (*str != '\0')
{
if (*str >= 'a' && *str <= 'z')
*str -= 'a' - 'A';
str++;
}
return dest;
}
char * upper(char *str) {
char *dest = str;
while (*str != '\0')
{
if (*str >= 'a' && *str <= 'z')
*str -= 'a' - 'A';
str++;
}
return dest;
}
这个函数里返回的dest是str的地址。它和这样的还不一样:
char *func(void)
{
char test[] = "hello";
return test;
}
这个是返回局部的变量(虽然也是地址,但是这个地址指向的是局部的)