- Tìm số 0 đầu tiên trong một mảng bit
- Unix Hiển thị thông tin về các tập tin khớp với một trong hai mẫu
- Biểu thức chính quy thay thế nhiều tệp
- Ẩn lệnh từ xtrace
我正在用 c 编写一个程序来读取文件的内容。代码如下:
#include
void main()
{
char line[90];
while(scanf("%79[^\n]\n",line)==1)
printf("%s",line);
}
以上代码读取一个文件内容并显示在屏幕上。
Nhưng
while(scanf("%79[^\n]",line)==1) and while(scanf("%79[^\n]s",line)==1) or while(scanf("%79[^\n]s\n",line)==1)
不起作用。(它们只显示第一行)
Có ai có thể giải thích được điều này không?
1 Câu trả lời
格式 "%79[^\n]"
表示最多 79 个字符,不是 '\N'
.
当你使用时,
scanf("%79[^\n]s",line)
返回值不应为 1,因为格式说明符中的 S
在读取完所有非 的字符后需要文字
。换句话说,S
\n'scanf
报告失败。
当你使用时,
scanf("%79[^\n]\n",line)
它成功了,因为它在末尾找到了文字 '\N'
.
两者的区别
scanf("%79[^\n]",line)
Và
scanf("%79[^\n]\n",line)
Đúng'\N'
在第一种情况下留在输入流中,而在第二种情况下被消耗。在第二种情况下,不仅 '\N'
被消耗,而且任何以 '\N'
开始的空格序列也被消耗(感谢@MattMcNabb补充说明)。
如果您希望 scanf
仅使用 '\N'
,请使用:
scanf("%79[^\n]%*c",line)
关于c - scanf ("%79[^\n]",line); 之间的区别vs scanf ("%79[^\n]\n",线) vs scanf ("%79[^\n]s",线),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24418394/
Điều này hiếm khi được sử dụng trong jQuery. Khi tôi xem mã, tôi thấy nó đã được sử dụng, vì vậy tôi đã gỡ lỗi giá trị này và nghĩ rằng đây chính là trường hợp đó. Nó vẫn khá hữu ích. Sau đây là tóm tắt về sự khác biệt và cách sử dụng của this và $(this). $(this) tạo ra cái gì?
Có sự khác biệt nào giữa việc sử dụng các lớp singleton và các bean được quản lý trong phạm vi ứng dụng để lưu trữ dữ liệu ứng dụng không? Tôi cần tra cứu một số tài nguyên JNDI, chẳng hạn như giao diện bean từ xa, vì vậy tôi đã tự viết cho mình một singleton để lưu trữ các tham chiếu của mình và chỉ cho phép
Nếu bạn xem kỹ các hình ảnh đi kèm, bạn sẽ nhận thấy rằng bạn có thể sử dụng Eclipse IDE để cấu trúc lại mã Groovy và chuyển đổi các phương thức thành closure và ngược lại. Vậy closure thực chất là gì và chúng khác với phương thức như thế nào? Có ai có thể đưa ra một ví dụ tốt về việc sử dụng closures không?
Sự khác biệt giữa vagrant box repackage (docs) và vagrant package (docs) là gì? Tôi nhận ra rằng gói vagrant chỉ hoạt động với VirtualBox.
Tôi muốn xem liệu có ai có thể giải thích tại sao đoạn mã sau lại hoạt động với valueOf nhưng lại không hoạt động với các đoạn mã khác không. nhập java.math.BigDecimal; lớp công khai Thay đổi { publ
Câu hỏi này đã có câu trả lời: Đã đóng cách đây 12 năm. Các bản sao có thể: Closures/Lambda trong PHP hoặc Javascript là gì trong ngôn ngữ bình dân
Câu hỏi này đã có câu trả lời ở đây: Vagrant, Docker, Puppet, Chef (3 câu trả lời) Đã đóng 2 năm trước. Docker và Chef có điểm gì chung?
Đoạn mã sau đây tạo ra kết quả tương tự trên 95% máy, nhưng lại khác nhau ở một số máy. Ở chế độ Gỡ lỗi, đầu ra là: Thay đổi từ Mới thành Hoàn thành OK Nhưng ở chế độ Phát hành: Thay đổi
////Tạo đối tượng var Obj; // init Object Obj= {}; Sự khác biệt giữa hai cái này là gì? Có thể nói ngắn gọn thế này được không? Có lợi ích gì khi sử dụng theo cách này không?
Tôi đang cố gắng tìm ra sự khác biệt giữa các dịch vụ hẹn giờ. Tôi nên sử dụng cái nào và khi nào? Tôi đang sử dụng máy chủ ứng dụng Jboss. 1) java.ejb.Schedule. @Schedule chú thích hoặc cấu hình từ xml. 2) javax.e
Tôi đã phát hiện ra rằng có ba cách khác nhau để truyền đối tượng vào hàm trong C++. Giả sử lớp của tôi như thế này: class Test { int i; public: Test(int x);
Sự khác biệt là gì? lớp công khai Kiểm tra { công khai tĩnh void main (String args []) { Chuỗi toBeCast = "c
Nếu tôi có một cột, đặt làm chỉ mục chính, đặt là INT. Nếu tôi không thiết lập chế độ tự động tăng mà chỉ chèn các số nguyên ngẫu nhiên duy nhất vào thì liệu điều này có làm chậm các truy vấn trong tương lai so với chế độ tự động tăng không? Nếu tôi có chỉ mục chính và chỉ mục duy nhất là INT
Sự khác biệt giữa hai định dạng ngày tháng này là gì? Cái đầu tiên cho biết thời gian thực tế, cái thứ hai cho biết thời gian bằng cách thêm giá trị chênh lệch múi giờ. NSDateFormatter *dateFormatter = [[phân bổ NSDateFormatter]
Nếu có một hàm, chẳng hạn như foo: function foo() { console.log('bar'); } thì trong JavaScript, sự khác biệt giữa việc gọi một hàm từ một hàm khác như thế này là gì:
đóng cửa. Câu hỏi này dựa trên ý kiến. Hiện tại không chấp nhận câu trả lời. Bạn có muốn cải thiện câu hỏi này không? Cập nhật câu hỏi để bạn có thể trả lời bằng thông tin và trích dẫn bằng cách chỉnh sửa bài đăng này. . Đã đóng cửa 4 năm trước. Ngẫu hứng
Mã là gì: class Time { private: int hours; int minutes; int seconds; private
Tôi biết đây là điều rất cơ bản, nhưng có ai phiền giải thích sự khác biệt giữa hai khai báo mảng này không: #include array myints; ... và: int myints[5]; ... và tại sao lại là myints.size
Tôi đã học cách tính độ đặc hiệu của css theo http://reference.sitepoint.com/css/specificity Tuy nhiên, dựa trên tài liệu tham khảo này, tôi không hiểu sự khác biệt giữa các lớp giả (từ c) và các phần tử giả
Tại sao lại xuất hiện thêm các dòng trống khi chạy 2)? Với tôi, 1 giống như 2. Vậy tại sao lại thêm dòng ở 2)? 1) xuất p1=$(cd $(dirname $0) && pwd) #
Tôi là một lập trình viên xuất sắc, rất giỏi!