程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> C 語言中將字符串倒 輸出

C 語言中將字符串倒 輸出

編輯:關於C語言

下面給大家分享一下這些代碼,共有兩種方法實現,用指針實現如下:

#include 

int main()
{
    char *src ="hello world";
    int len = strlen(src);
    char *dest = (char *)malloc(len+1);//要分配一個內存空間
    char *d =dest;
    char *s = &src[len-1];//指向最後一個字符
    while (len--!=0)
        *d++ = *s--;
        *d=0;//尾部要加'\0'
        printf("%s\n",dest);
        free(dest);//使用完應當釋放空間,以免造成內存洩漏
        dest = NULL;//防止產生野指針
    return 0;
}

用數組實現如下:

#include 
#include 

int main()
{
char str[] = "Hello world";
    int len = strlen(str);
    char t;
    for (int i =0; i

Heap與stack得差別:

Heap是堆,stack是棧

stack得空間由操作系統自動分配/釋放,Heap的空間手動分配/釋放

stack的空間有限,Heap 是很大的自由存儲區

C中的malloc函數分配的內存空間即在堆上,C++中對應的new操作符

程序在編譯期對變量和函數分配內存都在棧上進行,且程序運行過程中函數調用時參數的傳遞也在棧上進行

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved