C語言字串不定長引數處理

2021-10-05 22:20:53 字數 569 閱讀 8853

寫乙個顯示函式 show(char *str);用於在某些特殊螢幕顯示。

但是這個str 是乙個固定的引數,所以要先做 sprintf(str,format,…);然後才能傳給它。

這樣比較麻煩,直接寫成 show(char *str,int len,char *format,…);輸入不定長引數,更加方便。

#include

#include

#include

#include

intmysnprintf

(char

*msg,

int len,

char

*format,..

.)

#include

#include

#include

#include

void

mysscanf

(const

char

* str,

const

char

* format,..

.)

不定長字串輸入處理小技巧

大家在程式設計的過程中,經常會遇到需要輸入乙個不定長字串的情況。通常來說,解決這個問題可以有兩種方法 一是先分配乙個固定長度的緩衝區,把輸入的字串先儲存到這個緩衝區,然後再根據其長度動態分配記憶體。這個方法缺點是無論分配多大的緩衝區,都無法完全滿足要求。太大浪費記憶體,太小會發生字串截斷。二是逐個字...

C語言對 不定長 字串陣列的遍歷

一般來說,c語言的陣列的初始化可以通過三種方式 在宣告時使用,如 int a 10 使用memset,memset array,0,sizeof array 用for迴圈賦值c語言的陣列可以這樣宣告,int a 即不用事先計算長度,但是通過初始化的值的數量來自動判斷其長度。另外,對於這種宣告方式,便...

cin輸入不定長的字串

正常情況下,cin遇到空格結束讀取,寫個小例子 int main string a cin a cout 如何讀取帶空格的字串呢,通常由三種方式如下 include using namespace std main char a 20 cin.get a,20 coutmain char m 20 ...