『壹』 main()函數未定義是怎麼回事
這類錯誤是編譯器找不到指定的符號定義。它是在連接的時候出現的,有兩種可能:
1、你寫的這個函數只有省名,沒有定義。
2、這個函數是動態連接庫導出的函數,而你沒有連接它的lib庫文件可以用「#pragma comment(lib, "那個庫.lib")」編譯命令或設置VC的lib文件路徑。
仔細查看代碼是構建了main函數的,但是如下代碼:(紅框位置)
(1)編譯的時候怎麼找未定義的函數擴展閱讀:
C++函數分類:(main()函數是可執行程序的入口函數)
一、從用戶使用的角度看,函數有兩種:
1、標准函數,即庫函數。這是由系統提供的。
2、用戶自定義的函數。可以解決用戶的專門需要。
二、從函數的形式看,函數分兩類:
1、無參函數。printstar和print_message就是無參函數。在調用無參函數時,主調函數並不將數據傳送給被調用函數,一般用來執行指定的一組操作。
2、有參函數。在調用函數時,在主調函數和被調用函數之間有數據傳遞。也就是說,主調函數可以將數據傳遞給被調用函數使用,被調用函數中的數據也可以帶回來供主調函數使用。
『貳』 我用VS編譯C程序時,總說printf未定義,我已經把文件改成.c了,為什麼還不行
在VS編譯C程序時提示printf未定義,即使文件已經改成.c擴展名,通常是因為缺少了必要的頭文件包含。具體原因及解決方法如下:
缺少頭文件包含:
確保文件確實被當作C文件處理:
清理並重建項目:
檢查命名空間或宏定義沖突:
綜上所述,最常見的原因是缺少了#include <stdio.h>這一行。確保在源文件中包含了正確的頭文件,通常可以解決這個問題。