乙個很簡單的程式,對高手來說,很小白,不過對自己來說,感覺還是值得記錄下來的。
先上程式:
// testdemo.cpp : 定義控制台應用程式的入口點。
#include "stdafx.h"
#include
using namespace std;
int _tmain(int argc, _tchar* argv)
執行結果:
並沒有出現想象中的輸出haha。
於是試著尋找原因,在網上搜了一下printf的用法,還是沒能明白。沒辦法,只能麻煩師兄,像師兄請教了。
師兄就是師兄,至少在我看來是這樣。
師兄說printf是不能這麼用的。
正確的用法是:
printf("%s\n",temp.c_str());
請教師兄原因,師兄說其實vc++相容c語言和c++,但是printf是c語言中的函式,c語言中是沒有string這個型別的,這是c++中的類。所以要用temp.c_str().
還有,還可以這麼定義並輸出字串。
char *str1 = "haha";
char str2 = "haha";
printf("%s\n",str1);
printf("%s\n",str2);
這樣都是可以的。
我自己又修改了一下程式:
#include "stdafx.h"
#include "student.h"
#include
using namespace std;
int _tmain(int argc, _tchar* argv)
執行結果如下:
這次就正確了。
後記:對高手甚至一般人來說,這是很簡單的問題,不過,對於我來說,卻是新知識。所以特此記錄下來。提醒自己以後學習要注意細節,要知其然,知其所以然! 每天進步一點點,向高手學習,向大牛前進!
C 中printf 函式的用法5
printf 函式的type是 n時,不是表示列印資料,而是將列印資訊的數量儲存到指定的變數中,需要注意的是,在printf 函式中使用 n時,其對應的引數是變數的位址。當printf 使用 n時,會有不安全的隱患,因此,預設情況下,n是不能使用的。如果需要使用,則要開啟 n的開關。通過 get p...
C 中printf 函式的用法10 10
printf 的引數格式如下所示 flags width precision size type 其中,第四個域size在指定了type的取值範圍。當size域是hh,且type是d,i,o,u,x或者x時,表示以十進位制整型 八進位制 無符號或者十六進製制的格式列印字元。char c 0xf0 p...
關於printf()輸出函式的一些用法
printf 的格式字元 d格式符 用來輸出十進位制整數 d 按整型資料的實際長度輸出 md 使輸出長度為m,如果資料長度小於m,則左補空格,如果大於m,則輸出實際長度 ld 輸出長整型資料 o格式符 以八進位制形式輸出整數 x格式符 以十六進製制形式輸出整數 u格式符 用來輸出unsigned型資...