2011-11-15 43 views
1

我知道這裏已經解決了這個問題一百萬次,並且我知道它是關於printf的類型安全(或者說缺少它),但是我想要一些幫助因爲教授完全拒絕C++解決方案。 我有以下結構:cout和printf在顯示鏈接列表中顯示不同的結果

struct node 
{ 
     char author[40]; 
     char title[40]; 
     float price; 
     int stock; 
     nod *next;   
}; 

我知道一個事實,即信息被妥善保存,我已經收窄的問題,以顯示功能:

void display()      
{  
    nod *nod;  
    nod=p;       
    while(nod)      
    {  
     printf("%s \t %s \t %e \t%d", &node->auhtor, &node->title, &node->price, &node->stock);   
     node=node->next;}     
     printf("\n");  
    }  
}  

究竟是什麼,我需要改變爲顯示相同的結果

cout<<nod->autor<<'\t'<<nod->titlu<<'\t'<<nod->pret<<'\t'<<nod->stoc<<endl; 
+1

你可以請你發佈每個版本的輸出嗎?並說明你看到了哪些區別? – thiton

+4

你似乎沒有決定如何拼寫變量名稱。這可能是一個開始。 –

+0

投入'<<'運算符周圍的空格。 –

回答

2

只需刪除所有&符。你想要真正的交易,所以不要應用參考運算符。

0

首先,刪除printf版本中選項卡前後的空格。