Tôi đang gặp sự cố khi khai báo biến chuỗi. Mã và các lỗi có ở đây: http://pastebin.com/TEQCxpZd Bất kỳ suy nghĩ nào về những gì tôi đang làm sai? Ngoài ra, hãy giữ nền tảng độc lập. Cảm ơn!Tuyên bố biến đổi chuỗi C++
#include <stdio.h>
#include <string>
using namespace std;
int main()
{
string input; //Declare variable holding a string
input = scanf; //Get input and assign it to variable
printf(input); //Print text
return 0;
}
Getting this from GCC:
main.cpp: In function ‘int main()’:
main.cpp:53:10: error: invalid conversion from ‘int (*)(const char*, ...)’ to ‘char’
main.cpp:53:10: error: initializing argument 1 of ‘std::basic_string<_CharT, _Traits, _Alloc>& std::basic_string<_CharT, _Traits, _Alloc>::operator=(_CharT) [with _CharT = char, _Traits = std::char_traits<char>, _Alloc = std::allocator<char>, std::basic_string<_CharT, _Traits, _Alloc> = std::basic_string<char>]’
main.cpp:54:14: error: cannot convert ‘std::string’ to ‘const char*’ for argument ‘1’ to ‘int printf(const char*, ...)’
Điều gì đã cho bạn ý tưởng 'input = scanf' hợp lệ? – GManNickG
Có thể từ Pascal nơi bạn có thể gọi một hàm không có '()'. – dan04
Thật kỳ lạ, C++ không phải là Pascal. – GManNickG